Передача нескольких переменных PHP в shell_exec ()?

Я вызываю test.sh из PHP, используя метод shell_exec.

$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?

Ответы на вопрос(6)

Ваш ответ на вопрос