Передача GET параметров при запуске из командной строки

borzih

Новичок
Передача GET параметров при запуске из командной строки

Есть некий PHP, запускаемый из командной строки UNIX (а не из браузера!):
/usr/local/bin/php /xxx/xxx/myscript.php > /dev/null

Надо каком-либо образом передать ему параметры. Пробую так:
/usr/local/bin/php /xxx/xxx/myscript.php?parametr1=123&parametr2=555 > /dev/null

Получаю ошибку. Знаки ? и & - здесь не срабатывают... Как бы это сделать?
 

neko

tеam neko
почему & не срабатывает?
разве скрипт от консоли не отваливается?
 

borzih

Новичок
Я про то и говорю. Знаки ? и & в командной строке UNIX имеют совсем другой смысл, чем в адресной строке браузера.
 

Nimous

Guest
borzih
А ты попробуй передавать параметры так, как они передаются в UNIX.
Вдруг получится...
 

borzih

Новичок
Не получается. Пробую так:
/usr/local/bin/php /xxx/xxx/myscript.php parametr1=123 parametr2=555
или так:
/usr/local/bin/php /xxx/xxx/myscript.php -parametr1 123 -parametr2 555

В скрипте читаю как $_GET[parametr1] и $_GET[parametr2].
Ничего не приходит!
 

Profic

just Profic (PHP5 BetaTeam)
Тогда не стоит читать их так, как будто оно запускается через браузер. [m]features.commandline[/m].
 

borzih

Новичок
Profic
Большое спасибо! Правильное решение оказалось таким:
1. Скрипт запускаем так:
/usr/local/bin/php /xxx/xxx/myscript.php 123 555
2. Читаем полученные параметры так:
<?
$parametr1=$argv[1]; // =123
$parametr2=$argv[2]; // =555
?>
 
Сверху