Php введення

Основна мета цього 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 буде скопійований в / bin / php при виконанні make install. в іншому випадку буде скопійований CGI -модуль. Наприклад, якщо ви вказали опцію --with-apxs. то при виконанні make install CLI-версія буде скопійована в / bin / php. Якщо ви хочете перекрити встановлений CGI -модуль, використовуйте make install-cli після виконання make install. В якості альтернативи ви могли б вказати опцію --disable-cgi в рядку конфігурації.

Оскільки обидві опції, --enable-cli і --enable-cgi. присутні за замовчуванням, одного присутності рядка --enable-cli в команді конфігурації недостатньо для того, щоб CLI-версія була встановлена ​​в / bin / php при виконанні make install.

Починаючи з PHP 5, бінарний файл 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.

User Contributed Notes

Схожі статті