|
Интерактивная консольНачиная с вверсии PHP 5.1.0, модуль CLI SAPI предоставляет интерактивную консоль, доступную с помощью опции -a , если PHP был скомплирован с опцией --with-readline . Интерактивная консоль позволяет непосредственно набирать и одновременно выполнять PHP-код. Пример #1 Запуск кода в интерактивной консоли $ php -a Interactive shell php > echo 5+8; 13 php > function addTwo($n) php > { php { return $n + 2; php { } php > var_dump(addtwo(2)); int(4) php > Интерактивная консоль также автодополняет (с помощью клавиши Tab) имена функций, констант, классов, переменных, вызовы статических методов и константы классов. Пример #2 Автодополнение по Tab Двойное нажатие клавиши Tab при наличии нескольких вариантов дополнения покажет список этих вариантов: php > strp[TAB][TAB] strpbrk strpos strptime php > strp Если доступно только одно дополнение, одиночное нажатие Tab дополнит оставшийся текст на той же самой строке: php > strpt[TAB]ime( Дополнение также работает для элементов, которые были объявлены в течении данной интерактивной сессии: php > $fooThisIsAReallyLongVariableName = 42; php > $foo[TAB]ThisIsAReallyLongVariableName Интерактивная консоль хранит историю команд, для доступа к ней можно использовать стрелки вверх и вниз. История хранится в файле ~/.php_history. Начиная с версии PHP 5.4.0, модуль CLI SAPI предоставляет две новые настройки в php.ini:cli.pager и cli.prompt. Настройка cli.pager позволяет использовать внешнюю программу (такую как less) для постраничного просмотра данных вместо их прямого вывода на экран. Настройка cli.prompt позволяет задавать приглашение php > на ввод команды. С PHP 5.4.0 также можно устанавливать настройки php.ini в интерактивной консоли используя специальное сокращение. Пример #3 Установка настройки php.ini в интерактивной консоли Настройка cli.prompt: php > #cli.prompt=hello world :> hello world :> Используя обратные апострофы можно задать PHP код, который выполнится в приглашении на ввод команды: php > #cli.prompt=`echo date('H:i:s');` php > 15:49:35 php > echo 'hi'; hi 15:49:43 php > sleep(2); 15:49:45 php > Установка less для постраничного вывода данных: php > #cli.pager=less php > phpinfo(); (output displayed in less) php > Настройка cli.prompt поддерживает несколько управляющих последовательностей:
|
|||||||||||