Поиск по сайту:

Как использовать и выполнять PHP-коды в командной строке Linux. Часть 1


PHP — это серверный язык сценариев с открытым исходным кодом, который первоначально обозначал «Личная домашняя страница», теперь означает «PHP: препроцессор гипертекста», что это рекурсивная аббревиатура. Это кроссплатформенный язык сценариев, на который сильно влияют C, C++ и Java.

Синтаксис PHP очень похож на синтаксис языков программирования C, Java и Perl с некоторыми особенностями PHP. На данный момент PHP используется на 260 миллионах веб-сайтов. Текущей стабильной версией является версия PHP 5.6.10.

PHP — это встроенный в HTML скрипт, который позволяет разработчикам быстро создавать динамически генерируемые страницы. PHP в основном используется на стороне сервера (а JavaScript на стороне клиента) для создания динамических веб-страниц через HTTP, однако вы будете удивлены, узнав, что вы можете выполнить PHP в терминале Linux без необходимости использования веб-браузера.

Цель этой статьи — пролить свет на аспект командной строки языка сценариев PHP.

1. После установки PHP и Apache2 нам необходимо установить интерпретатор командной строки PHP.

apt-get install php5-cli 			[Debian and alike System)
yum install php-cli 				[CentOS and alike System)

Следующее, что мы делаем, это тестируем PHP (если он установлен правильно или нет), обычно создавая файл infophp.php по адресу '/var/www/html'. (рабочий каталог Apache2 в большинстве дистрибутивов) с содержимым <?php phpinfo(); ?>, просто выполнив приведенную ниже команду.

echo '<?php phpinfo(); ?>' > /var/www/html/infophp.php

а затем укажите в браузере ссылку http://127.0.0.1/infophp.php, которая откроет этот файл в веб-браузере.

Те же результаты можно получить с терминала Linux без необходимости использования какого-либо браузера. Запустите файл PHP, расположенный по адресу «/var/www/html/infophp.php», в командной строке Linux следующим образом:

php -f /var/www/html/infophp.php

Поскольку выходные данные слишком велики, мы можем конвейеризировать приведенный выше вывод с помощью команды «less», чтобы получать по одному выводу на экран за раз, просто так:

php -f /var/www/html/infophp.php | less

Здесь опция «-f» анализирует и выполняет файл, следующий за командой.

2. Мы можем использовать phpinfo(), который является очень ценным инструментом отладки, непосредственно в командной строке Linux без необходимости вызывать его из файла, просто следующим образом:

php -r 'phpinfo();'

Здесь опция «-r» запускает PHP-код непосредственно в терминале Linux без тегов < и >.

3. Запустите PHP в интерактивном режиме и займитесь математикой. Здесь опция «-a» предназначена для запуска PHP в интерактивном режиме.

php -a

Interactive shell

php > echo 2+3;
5
php > echo 9-6;
3
php > echo 5*4;
20
php > echo 12/3;
4
php > echo 12/5;
2.4
php > echo 2+3-1;
4
php > echo 2+3-1*3;
2
php > exit

Нажмите «exit» или «ctrl+c», чтобы закрыть интерактивный режим PHP.

4. Вы можете запустить сценарий PHP так же, как если бы это был сценарий оболочки. Сначала создайте пример сценария PHP в текущем рабочем каталоге.

echo -e '#!/usr/bin/php\n<?php phpinfo(); ?>' > phpscript.php

Обратите внимание, что мы использовали #!/usr/bin/php в первой строке этого PHP-скрипта, как и в сценарии оболочки (/bin/bash). Первая строка #!/usr/bin/php указывает командной строке Linux проанализировать этот файл сценария интерпретатору PHP.

Во-вторых, сделайте его исполняемым как:

chmod 755 phpscript.php

и запустите его как,

./phpscript.php

5. Вы будете удивлены, узнав, что можете самостоятельно создавать простые функции с помощью интерактивной оболочки. Вот пошаговая инструкция.

Запустите интерактивный режим PHP.

php -a

Создайте функцию и назовите ее дополнением. Также объявите две переменные $a и $b.

php > function addition ($a, $b)

Используйте фигурные скобки, чтобы определить правила между ними для этой функции.

php > {

Определите правило(а). Здесь правило гласит: нужно добавить две переменные.

php { echo $a + $b;

Все правила определены. Заключите правила, закрыв фигурные скобки.

php {}

Проверьте функцию и добавьте цифры 4 и 3 просто так:

php > var_dump (addition(4,3));
Пример вывода
7NULL

Вы можете запустить приведенный ниже код для выполнения функции столько раз, сколько захотите, с разными значениями. Замените a и b своими значениями.

php > var_dump (addition(a,b));
php > var_dump (addition(9,3.3));
Пример вывода
12.3NULL

Вы можете запускать эту функцию до тех пор, пока не выйдете из интерактивного режима (Ctrl+z). Также вы могли заметить, что в приведенном выше выводе возвращаемый тип данных — NULL. Это можно исправить, попросив интерактивную оболочку PHP вернуть вместо echo.

Просто замените оператор «echo» в приведенной выше функции на «return».

Заменять

php { echo $a + $b;

с

php { return $a + $b;

а остальные вещи и принципы остаются прежними.

Вот пример, который возвращает соответствующий тип данных на выходе.

Всегда помните, что определяемые пользователем функции не сохраняются в истории от сеанса оболочки к сеансу оболочки, поэтому после выхода из интерактивной оболочки они теряются.

Надеюсь, вам понравился этот сеанс. Оставайтесь на связи, чтобы увидеть больше таких публикаций. Оставайтесь с нами и будьте здоровы. Поделитесь с нами своими ценными отзывами в комментариях. Поставьте лайк и поделитесь нами и помогите нам распространиться.

Читайте также: 12 полезных примеров использования командной строки PHP в терминале Linux – часть 2