Запуск РНР в командной строке
Помимо того, что РНР интегрируется с web-сервером так, что web-сервер становится способным запускать скрипты, РНР может быть использован как отдельное консольное приложение в командной строке операционной системы. Этот способ запуска может оказаться полезным для тестирования скриптов перед загрузкой их на сервер.
РНР является интерпретируемым языком. Это означает, что скрипт читается последовательно, оператор за оператором, и каждый оператор преобразуется в ту форму, в которой компьютер может его выполнить, и сразу же исполняется. В РНР программа, которая запускается в командной строке и выполняет интерпретацию скриптов, называется php. Программа, которая предназначена для вызова из web-сервера, называется php-cgi.
РНР может быть запущен в командной строке операционной системы путем простого ввода команды php. При этом для того, чтобы операционная система нашла этот файл, следует либо добавить путь к нему в список путей, по которому осуществляется поиск исполняемых файлов (в Windows это переменная среды операционной системы PATH), либо указать полный путь к файлу. Например, пусть имеется следующий скрипт echo. php:
echo "Доброе утро!";
?>
Для исполнения этого скрипта необходимо ввести следующую команду (считаем, что путь к РНР добавлен в список путей для поиска, а сам файл echo. php размещен в текущем каталоге). Знаком % обозначено приглашение операционной системы.
%php echo.php
Если всё в порядке, на экран будет выведена соответствующая строчка:
Доброе утро!
Если РНР не найден, то следует ввести полный путь к нему. В операционных системах Unix или Linux команда может выглядеть следующим образом:
$/usr/local/bin/php echo.php
При использовании Windows команда может иметь следующий вид:
С:\>С:\php\php echo.php
Интерпретатор РНР имеет много разнообразных опций, которые можно задать в его командной строке. При запуске команды php -h выводится полный список этих опций:
%php -h Usage: php[options][-f][—][args...] php[options]-r [—] [args...] php[options][-B
]-R [-E
] [—][args...] php[options][-B ]-F [-E ] [—][args...] php[options]--[args...]
-а | Интерактивный запуск |
-с <path> I <file> | Задать расположение конфигурационного файла php.ini |
-n | He использовать конфигурационный файл php.ini |
-d foo[=bar] | Описание константы |
-e | Формирование дополнительной информации для отладчика |
-f <file> | Задание файла скрипта |
-h | Вывод справки по опциям |
-i | Вывод информации о РНР |
-1 | Выполнение только синтаксического анализа файла |
-т | Вывести список подключенных модулей |
-г <code> | Выполнение РНР-кода без тегов <?...?> |
-В <begin_code> | Выполнение заданного кода перед обработкой скрипта |
-R <code> | Выполнение заданного кода для каждой строки исходного файла |
-F <file> | Выголнетие запанного скрипта для каждой строки исходного файла |
-Е <end_code> | Выполнение заданного кода после обработки скрипта |
-Н | Скрыть переданные аргументы от внешних средств |
-s | Вывести исходный текст с выделением синтаксиса цветом |
-v | Отображение версии РНР |
-w | Вывод исходного текста без комментариев и лишних пробелов |
-z <file> | Загрузить файл расширения Zend |
Например, для вывода справочной информации о РНР (текстовый аналог того, что формирует функция phpinfо) используется опция -i. Как уже было сказано выше, для отображения версии РНР используется опция -v:
%php -v РНР 5.1.5 (cli) (built: Aug 15 2006 23:54:56) Copyright (с) 1997-2006 The PHP Group Zend Engine v2.1.0, Copyright (c) 1998-2006 Zend Technologies
В операционных системах Linux и Unix PHP-скрипт может быть запущен просто по имени, набранному в командной строке, если в первой строке скрипта присутствует команда запуска РНР (с префиксом #!), и файл помечен как исполняемый:
# ! /usr/bin/php <?php echo "Доброе утро!"; ?>
Автор: Стивен Хольцнер. Переводчик: С. Банников