1

我在 Rails 工作,我需要调用 PHP 脚本。我可以像这样连接到脚本:

system('php public/myscript.php')

但我需要用它发送一些参数。我怎么做?

谢谢

4

3 回答 3

3

您可以为 PHP 脚本提供命令行参数:

system('php public/myscript.php arg1 arg2')

它们可以从您的 PHP 代码中获得,如下所示:

echo $argv[0]; // public/myscript.php
echo $argv[1]; // arg1
echo $argv[2]; // arg2
于 2012-04-05T09:37:30.837 回答
1

您可以只在命令行上指定参数,例如system('php -f public/myscript.php argument1 argument2 [...]')它们将在$argv[]数组中可用,从$argv[1]. 有关更多信息,请参阅此处的文档页面。

于 2012-04-05T09:35:36.930 回答
0

是的,它的正确使用方法system('php public/myscript.php arg1 arg2')正如 SirDarius 回答的那样。

但在这种情况下,系统命令将返回真或假。

system() 将返回 TrueClass 或 FalseClass 并显示输出,在 console 上试试。

我建议,您可以在任何 URL 上使用 open 方法来调用它,这样您就可以使用它来调用您的 PHP 脚本:

require 'open-uri'

open('YOUR PHP SCRIPT PATH WITH PARAMETER') do |response|
  content = response.read
end
于 2012-04-05T11:30:48.733 回答