Как запустить php-скрипт из командной строки с помощью php-интерпретатора, который используется для анализа веб-скриптов.
Более детально –
У меня есть файл phpinfo.php
который при доступе из Интернета показывает, что установлен gearman
. Однако, если я запустил phpinfo.php
из командной строки, используя – php phpinfo.php
и grep
для gearman
, я не нахожу его. Таким образом, оба php отличаются. Мне нужно запустить скрипт, на котором установлен php
на котором установлен gearman
.
Как я могу это сделать?
После недоразумений я наконец получил то, что вы пытаетесь сделать. Вы должны проверить файлы конфигурации сервера; вы используете apache2 или какое-либо другое программное обеспечение сервера?
Посмотрите на строки, начинающиеся с LoadModule php
… Вероятно, есть файлы конфигурации / каталоги с именами mods
или что-то в этом роде.
Вы также можете проверить вывод из php -r 'phpinfo();' | grep php
php -r 'phpinfo();' | grep php
php -r 'phpinfo();' | grep php
и сравнить строки с phpinfo();
с веб-сервера.
php
интерактивном режиме: (чтобы вы могли вставлять / писать код в консоли)
php -a
php -f file.php
php -f file.php > reults.html
Чтобы запустить только небольшую часть, одну строку или подобное, вы можете использовать:
php -r '$x = "Hello World"; echo "$x\n";'
Если вы используете linux, тогда выполните man php
на консоли.
(Я знаю, что это старый вопрос)
В SuSE для PHP есть два разных файла конфигурации: один для Apache и один для CLI (интерфейс командной строки). В каталоге / etc / php5 / вы найдете каталог «apache2» и каталог «cli». Каждый из них имеет файл «php.ini». Файлы предназначены для той же цели (конфигурация php), но применяются к двум различным способам запуска PHP. Эти файлы, среди прочего, загружают модули, используемые PHP.
Если ваша ОС похожа, эти два файла, вероятно, не совпадают. Возможно, ваш Apache php.ini загружает модуль gearman, а cli php.ini – нет. Когда модуль был установлен (автоматический или ручной), он, вероятно, обновил только файл Apache php.ini.
Вы можете просто скопировать файл Apache php.ini в каталог cli, чтобы среда CLI была похожа на среду Apache.
Или вы можете найти строку, которая загружает модуль редуктора в файл Apache и копирует / вставляет его только в файл CLI.