Введение
Основная цель этого CLI SAPI —
разработка консольных приложений на PHP.
Есть довольно много различий между
CLI SAPI и другими видами SAPI, которые
будут рассмотрены в этой главе.
Стоит отметить, что CLI SAPI и CGI —
различные SAPI-интерфейсы, хотя в их поведении много общего.
CLI SAPI включается по умолчанию с помощью опции
--enable-cli, но может быть выключен
опцией --disable-cli при запуске
./configure.
Имя, расположение и существование бинарных модулей
CLI/CGI зависит от того, как именно
установлен PHP в вашей системе. По умолчанию при выполнении
make создаётся как CGI-,
так и CLI-модуль, размещённые в директориях
sapi/cgi/php-cgi
и sapi/cli/php соответственно,
внутри директории с исходниками PHP.
Следует заметить, что оба файла имеют одинаковое название:
php.
Что произойдёт при выполнении make install,
зависит от того, какие опции вы указали на стадии
конфигурирования. Если выбран модуль SAPI
во время выполнения, например, apxs, или используется опция
опция --disable-cgi,
модуль CLI будет скопирован в {PREFIX}/bin/php при
выполнении make install, в противном случае
будет скопирован CGI-модуль. Например, если
задана опция --with-apxs,
то при выполнении make install
CLI-версия будет скопирована в {PREFIX}/bin/php.
Если вы хотите переопределить установку CGI-модуль,
используйте make install-cli после выполнения
make install. В качестве альтернативы
вы могли бы указать опцию --disable-cgi
в строке конфигурации.
Замечание:
Поскольку обе опции, --enable-cli
и --enable-cgi, включены
по умолчанию, просто наличие
--enable-cli в команде
конфигурации необязательно означает, что CLI будет скопирован
в {PREFIX}/bin/php при выполнении
make install.
Бинарный файл CLI входит в дистрибутив
для Windows в основной папке в качестве файлаphp.exe.
CGI-версия находится в файле php-cgi.exe.
Кроме того, в дистрибутив входит файл php-win.exe,
если PHP был сконфигурирован с помощью --enable-cli-win32.
Он полностью эквивалентен CLI-версии, за исключением того,
что абсолютно ничего не выводит, и, таким образом, не предоставляет консоль
(окно терминала не появляется на экране).
Замечание:
Какой из вариантов SAPI установлен?
Выполните из командной строки php -v
для получения информации о том, является ли php
CGI или CLI. Также вы можете использовать
функцию php_sapi_name() или константу
PHP_SAPI
.
Замечание:
Соответствующую страницу руководства (man
)
Unix можно просмотреть с помощью команды man php
в консоли.