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

Прежде чем начать, убедитесь, что PHP установлен на вашей системе. Вы можете проверить наличие PHP, выполнив в терминале команду:
php -v
Если PHP установлен, вы увидите версию и другую информацию. Если нет, следуйте инструкциям по установке на официальном сайте PHP.
Запуск PHP в командной строке
Чтобы запустить PHP-скрипт из консоли, вы можете создать файл с расширением .php
, например script.php
, и поместить в него следующий код:
<?php<br>echo "Hello, CLI!";
Затем выполните скрипт, используя следующую команду:
php script.php
Если всё сделано правильно, в консоли появится сообщение:
Hello, CLI!
Использование аргументов командной строки
PHP позволяет передавать аргументы в скрипты через командную строку. Это упрощает настройку поведения программы и делает скрипты более универсальными. Рассмотрим пример:
Создайте файл greet.php
:
1) {<br>echo "Hello, " . $argv[1] . "!\n";<br>} else {<br>echo "Hello, World!\n";<br>}
Используйте команду для запуска скрипта с аргументом:
php greet.php John
Вы должны увидеть:
Hello, John!
Обработка ввода с клавиатуры
В PHP можно читать данные из стандартного ввода, что позволяет делать интерактивные сценарии.
Создайте файл input.php
:
<?php<br>echo "Enter your name: ";<br>$name = trim(fgets(STDIN));<br>echo "Hello, $name!\n";
Выполните скрипт:
php input.php
После появления команды, введите ваше имя и получите ответ от скрипта.
Использование внешних библиотек и инструментов
В консольных приложениях PHP можно использовать все те же библиотеки и фреймворки, что и в веб-приложениях. Одним из популярных инструментов является Composer — менеджер пакетов для PHP.
Вы можете легко добавлять зависимости в ваш проект, выполняя команды Composer в консоли. Например, для установки библиотеки Guzzle выполните:
composer require guzzlehttp/guzzle
После чего её можно использовать в скрипте:
<?php require 'vendor/autoload.php'; use GuzzleHttp\Client; $client = new Client(); $response = $client->request('GET', 'https://api.github.com/repos/guzzle/guzzle'); echo $response->getBody();
Автоматизация задач
PHP хорошо подходит для выполнения рутинных задач, таких как резервное копирование, работа с файлами и т.д. Рассмотрим пример скрипта для резервного копирования директории:
<?php
$source = ‘/path/to/source’;
$backup = ‘/path/to/backup/’ . date(‘Y-m-d’) . ‘.zip’;
$zip = new ZipArchive();
if ($zip->open($backup, ZipArchive::CREATE) === TRUE) {
$iterator = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($source));
foreach ($iterator as $file) {
if (!$file->isDir()) {
$filePath = $file->getRealPath();
$relativePath = substr($filePath, strlen($source) + 1);
$zip->addFile($filePath, $relativePath);
}
}
$zip->close();
echo «Backup completed successfully.\n»;
} else {
echo «Failed to create backup.\n»;
}
В этом скрипте используется класс ZipArchive
для создания архивов.
Заключение
PHP в консольном режиме — мощный и гибкий инструмент для выполнения множества задач. От простых скриптов, до сложных автоматизированных систем — PHP справляется с этим на отлично. Консольное использование расширяет спектр возможностей языка и позволяет использовать его не только в веб-разработке, но и для системного администрирования, анализа данных и автоматизации. Надеемся, что примеры в этой статье вдохновят вас на создание своих собственных скриптов для решения практических задач.