Как использовать и выполнять 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