Запуск PHP-скрипта без веб-сервера: Подробное руководство

Для выполнения PHP скриптов обычно используются веб-серверы, но иногда может возникнуть необходимость запустить PHP-скрипт непосредственно из командной строки, без использования веб-сервера. Это может быть полезно для отладки или автоматизации задач.

В этой статье мы рассмотрим, как запустить PHP-скрипт без веб-сервера на операционных системах Linux и Windows.

Как запустить PHP-скрипт в командной строке Linux

  1. Откройте терминал. 
  2. Убедитесь, что PHP установлен на вашей системе. Введите следующую команду, чтобы проверить установку и получить версию PHP:

php -v

Если интерпретатор-PHP не установлен, выполните следующую команду, чтобы установить его:

Ubuntu/Debian:

sudo apt-get install php

CentOS:

sudo yum install php

  1. Создайте PHP-скрипт, используя консольный текстовый редактор, например, «nano» или «vim». Для создания нового скрипта с именем «script.php», выполните следующую команду:

nano script.php

  1. В открывшемся редакторе введите PHP-код для вашего скрипта. Например:

   php

   <?php

   echo "Hello, World!";

   ?>

   

  1. Сохраните скрипт и закройте редактор.
  2. Теперь вы можете запустить созданный PHP-скрипт. Введите следующую команду в терминале:

php script.php

Готово! Вы успешно запустили PHP-скрипт в командной строке Linux. В данном случае, на экране появится вывод «Hello, World!».

Этот подход можно также использовать для выполнения более сложных скриптов и автоматизации различных задач в Linux-среде.

Как запустить PHP скрипт в командной строке Windows

Вы можете запустить PHP в командной строке, не устанавливая веб-сервер. Достаточно просто работать через PHP-интерпретатор. 

  1. Откройте командную строку в Windows. Для этого зажмите сочетание клавиш Win+R, введите «cmd» и нажмите Enter.
  2. Убедитесь, что PHP установлен в вашей системе. Чтобы проверить наличие PHP в системе и узнать установленную версию, введите:

php -v

Если PHP не установлен, загрузите и установите его с официального сайта PHP

Важно! На момент написания нашего руководства релевантная версия PHP – 8.2. Вы же можете установить ту, которая будет актуальна для вас. Всегда выбирайте версию «Thread Safe».

Загрузите соответствующий установщик PHP для Windows и следуйте инструкциям по установке.

  1. Создайте PHP-скрипт, используя любой текстовый редактор. В данной инструкции мы воспользуемся Блокнотом

Для создания нового скрипта с именем «script.php», выполните следующую команду: 

notepad script.php

  1. В открывшемся редакторе введите PHP-код для вашего скрипта. Например:

   php

   <?php

   echo "Hello, World!";

   ?>

   

  1. Сохраните скрипт и закройте редактор.
  2. Теперь вы можете запустить PHP-скрипт. В командной строке пропишите команду:

php script.php 

Готово! Вы успешно запустили PHP-скрипт в командной строке Windows. В данном случае, на экране появится вывод «Hello, World!».

Вы можете использовать этот подход для выполнения более сложных скриптов и автоматизации различных задач в среде Windows.

Различные опции запуска PHP-скриптов в командной строке

Опции запуска PHP скриптов в командной строке предоставляют собой различные возможности и параметры для управления выполнением скриптов. Запустив команду php -h можно ознакомиться со следующими опциями:

Опция

Полное название

Функция

-a

--interactive

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

-c

--php-ini

Указывает каталог, где находится файл php.ini.

-n

--no-php-ini

Ставит задачу не использовать php.ini

-d

--define

Задаёт пользовательское значение для каждой конфигурационной опции php.ini.

-e

--profile-info

Генерирует расширенную информацию для отладчика/профайлера.

-f

--file

Разбирает и выполняет указанный файл.

-h и -?

--help и --usage

Предоставляет справку доступных опций.

-i

--info

Выводит информацию о PHP.

-l

--syntax-check

Проверяет синтаксис кода.

-m

--modules

Показывает встроенные и загруженные модули.

-r

--run

Выполняет PHP-код без использования тегов скрипта.

-B

--process-begin

Выполняет PHP-код перед обработкой входных строк.

-R

--process-code

Выполняет PHP-код для каждой входной строки.

-F

--process-file

Разбирает и выполняет указанный PHP-файл для каждой входной строки.

-E

--process-end

Выполняет PHP-код после обработки всех входных строк.

-S

--server

Запускает встроенный веб-сервер.

-t

--docroot

Указывает корневой каталог документов для встроенного веб-сервера.

-s

--syntax-highlight и --syntax-highlighting

Выводит исходный код с подсветкой синтаксиса HTML.

-v

--version

Указывает номер версии.

-w

--strip

Выводит исходный код без комментариев и пробелов.

-z

--zend-extension

Загружает расширение Zend.

не задано

--ini

Показывает имена конфигурационных файлов.

--rf

--rfunction

Предоставляет информацию об указанной функции.

--rc

--rclass

Предоставляет информацию об указанном классе.

--re

--rextension

Предоставляет информацию об указанном расширении (модуле).

--rz

--rzendextension

Предоставляет информацию об указанном модуле Zend.

--ri

--rextinfo

Предоставляет информацию о конфигурации заданного модуля.

Больше о существующих опциях вы можете узнать из официальной документации PHP.

Как проверить синтаксис PHP-скрипта с помощью опции -l

Как мы уже рассмотрели выше, при использовании опции -l можно проверить синтаксис кода PHP, чтобы убедиться, что он не содержит ошибок и соответствует правилам. 

Для этого способа не требуется запуск скрипта, – проверка будет произведена внутри командной строки.

Общий синтаксис:

php -l путь/к/файлу/.php

Пример использования:

php -l C:/Users/Nicru/Documents/PHP/script.php

В результате выполнения команды будет выведено сообщение о том, является ли синтаксис скрипта корректным или же есть ошибки, которые необходимо исправить. 

Если всё верно, вы получите следующий вывод:

No syntax errors detected in C:/Users/Nicru/Documents/PHP/script.php

Если в синтаксисе есть ошибки:

php -l C:/Users/Nicru/Documents/PHP/script.php

PHP Parse error:  syntax error, unexpected end of file in C:/Users/Nicru/Documents/PHP/script.php on line 8

Parse error: syntax error, unexpected end of file in C:/Users/Nicru/Documents/PHP/script.php on line 8

Errors parsing C:/Users/Nicru/Documents/PHP/script.php

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

Как запустить PHP-файл в командной строке Windows и Linux

Как в Windows, так и в Linux для запуска .php файла в командной строке, вы можете использовать следующие команды:

php -f путь/к/файлу.php

Вы также можете опустить опцию «-f», так предыдущая и следующая команды останутся равнозначны:

php путь/к/файлу.php

Например, если у вас есть файл, расположенный в директории «C:/Users/Nicru/Documents/PHP/script.php», вы можете запустить его в PHP с помощью следующих команд:

php -f C:/Users/Nicru/Documents/PHP/script.php

Или!

php C:/Users/Nicru/Documents/PHP/script.php

Таким образом, вы можете без особых усилий запускать PHP-скрипты в командной строке как в Windows, так и в Linux, используя соответствующие команды и указывая путь к файлу .php, который вы хотите выполнить.

Как в PHP-скрипте обратиться к аргументам

В PHP вы можете обратиться к аргументам, переданным скрипту, с помощью специального массива $argv. Этот массив содержит значения аргументов командной строки, переданных при запуске скрипта.

Каждый элемент массива $argv соответствует отдельному аргументу, где $argv[0] содержит имя самого скрипта, а $argv[1], $argv[2] и прочие содержат значения последующих аргументов.

Например, если у вас есть PHP-скрипт «script.php», который запускается с аргументами командной строки, вы можете получить доступ к этим аргументам следующим образом:

<?php

$argc = count($argv);

if ($argc > 0) {

for ($i = 1; $i < $argc; $i++) {

echo "Аргумент $i: " . $argv[$i] . "\n";

    }

}

?>

Таким образом, вы можете обратиться к аргументам командной строки в PHP скрипте, используя массив «$argv», и выполнять операции на основе переданных значений аргументов.

Запуск отдельных команд PHP

В командной строке вы также можете запускать отдельные команды PHP, не используя целый PHP-скрипт. 

Запускать отдельные команды PHP можно с помощью опции -r (или --run). Она позволяет передавать PHP-код непосредственно в командную строку. 

Вот как это работает:

Введите следующую команду:

php -r 'код'

Где «код» – это PHP-код, который вы хотите выполнить. Например, для вывода строки «Hello, World!» вы можете использовать:

php -r 'echo 'Hello, World!';'

После ввода команды и нажатия Enter, PHP выполнит указанный код и выведет результат в командной строке. В данном примере, результатом будет строка «Hello, World!».

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

Заключение

Запуск PHP скриптов в командной строке без веб-сервера является удобным способом выполнения PHP-кода для отладки, автоматизации задач и выполнения различных сценариев. В этой статье мы рассмотрели, как запустить PHP скрипт в командной строке Linux и Windows, а также ознакомились с опциями запуска PHP-скриптов и запуском отдельных команд PHP. 

Теперь вы можете использовать этот гибкий способ работы с PHP в вашей системе. 

Всё ещё остались вопросы?