我正在使用 shell_exec 方法从 PHP 调用 test.sh。
$my_url="http://www.somesite.com/";
$my_refer="http://www.somesite.com/";
$page = shell_exec('/tmp/my_script.php $my_url $my_refer');
但是,命令行脚本说它只收到 1 个参数:/tmp/my_script.php
当我将呼叫更改为:
代码:
$page = shell_exec('/tmp/my_script.php {$my_url} {$my_refer}');
它说它收到了 3 个参数,但 argv[1] 和 argv[2] 是空的。
当我将呼叫更改为:
代码:
$page = shell_exec('/tmp/my_script.php "http://www.somesite.com/" "http://www.somesite.com/"');
脚本最终按预期接收所有 3 个参数。
您是否总是必须在脚本中发送仅引用的文本,并且不允许发送像 $var 这样的变量?或者有什么特殊的方式你必须发送一个 $var ?