Как запустить код php в консоли

Как запустить код php в консоли

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

Первый шаг – установка PHP. На большинстве операционных систем PHP уже можно установить через менеджеры пакетов. Для Linux достаточно выполнить команду sudo apt install php или аналогичную для вашей системы. Для пользователей Windows потребуется скачать и установить PHP вручную с официального сайта, а затем настроить переменные среды, чтобы иметь возможность запускать PHP команды из консоли.

После установки можно перейти ко второму шагу – проверке работоспособности PHP в консоли. Для этого достаточно ввести команду php -v, чтобы увидеть текущую версию PHP и убедиться, что установка прошла успешно. Если версия отображается, значит, PHP настроен корректно и готов к использованию.

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

Установка PHP на компьютер

Установка PHP на компьютер

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

На Windows скачайте архив с PHP с официального сайта (https://windows.php.net/download). Выберите версию Non Thread Safe (NTS), так как она оптимизирована для работы в консоли. Распакуйте архив в папку, например, C:\php. После этого добавьте путь к этой папке в переменную окружения PATH, чтобы иметь возможность запускать PHP из любой директории через командную строку.

В Linux установка PHP выполняется через пакетный менеджер. На Ubuntu используйте команду:

sudo apt install php

Для других дистрибутивов команды могут отличаться. После установки проверьте версию PHP с помощью:

php -v

В macOS PHP можно установить через Homebrew. Если у вас еще нет Homebrew, установите его с помощью:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

Затем установите PHP командой:

brew install php

После установки PHP на любой операционной системе проверьте, что всё работает, выполнив команду:

php -v

Если версия PHP отображается корректно, можно приступать к запуску PHP скриптов в консоли.

Проверка правильности установки PHP в консоли

Проверка правильности установки PHP в консоли

Для того чтобы убедиться, что PHP правильно установлен на вашем компьютере, откройте консоль и выполните команду:

php -v

Эта команда выведет текущую версию PHP. Если PHP установлен корректно, вы увидите сообщение о версии, например:

PHP 8.0.3 (cli) (built: Feb 25 2021 11:54:51) (NTS)
export PATH=$PATH:/usr/local/php/bin

Для дополнительной проверки вы можете создать простой PHP-скрипт. Откройте текстовый редактор, создайте файл с расширением .php и введите следующий код:


Сохраните файл, затем в консоли выполните команду:

php имя_файла.php

Если на экране появится сообщение «PHP работает корректно!», значит, установка прошла успешно. В противном случае потребуется переустановить PHP или настроить сервер, если он используется для локальной разработки.

Запуск простого PHP кода через командную строку

Для выполнения PHP кода в командной строке, необходимо сначала убедиться, что PHP установлен на вашем компьютере. Чтобы проверить наличие PHP, откройте командную строку и введите команду:

php -v

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

После установки PHP можно приступить к запуску кода. Простые скрипты можно запускать напрямую из командной строки. Для этого создайте файл с расширением .php, например, script.php, и добавьте в него код:


Чтобы выполнить этот файл, в командной строке перейдите в директорию, где он находится, и выполните команду:

php script.php
Hello, World!

Если необходимо выполнить код непосредственно в командной строке, это можно сделать с помощью флага -r, который позволяет указать код непосредственно в параметре команды:

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

Для более сложных задач можно передавать параметры в PHP скрипт. Например, если скрипт ожидает входные данные через $_GET или $_POST, их можно передавать с помощью флага -d, который задает параметры конфигурации PHP:

php -d "variable=value" script.php

Также для отладки или тестирования часто используют флаг -l, который проверяет синтаксис PHP скрипта:

php -l script.php

Это позволяет быстро найти ошибки в коде без выполнения программы.

Использование командной строки для выполнения PHP файлов

Для запуска PHP скриптов из командной строки необходимо, чтобы интерпретатор PHP был установлен и прописан в системной переменной PATH. Проверка доступности выполняется командой:

php -v

Если команда возвращает версию PHP, можно запускать скрипты. Выполнение файла производится следующим образом:

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

Например:

php C:\projects\test\script.php

Для Linux и macOS путь указывается с использованием прямых слэшей:

php /home/user/scripts/test.php

Если скрипт требует аргументы, они передаются после имени файла:

php script.php аргумент1 аргумент2

Доступ к аргументам внутри скрипта осуществляется через массив $argv, а их количество можно узнать через $argc.


 $value) {
echo "Аргумент $index: $value" . PHP_EOL;
}
?>

Если нужно выполнить скрипт из текущей директории, указывайте файл без полного пути:

php script.php

Переход в нужную директорию выполняется командой cd перед запуском:

cd C:\projects\test
php script.php

Для автоматизации рекомендуется использовать пакетный файл (.bat на Windows) или shell-скрипт (.sh на Linux/macOS) с командами запуска.

Запуск PHP скриптов с параметрами через консоль

Пример команды запуска:

php скрипт.php параметр1 параметр2

Внутри скрипта:


$первый = $argv[1];
$второй = $argv[2];

Если аргументы не переданы, при обращении к ним возникнет предупреждение. Перед доступом к элементам $argv нужно проверять их наличие через isset().

Для чтения аргументов по ключу удобно использовать флаги:

php скрипт.php --имя=Иван --возраст=30

Парсинг таких параметров выполняется вручную или через функцию getopt(). Пример использования getopt():


$опции = getopt("", ["имя:", "возраст:"]);
$имя = $опции["имя"] ?? "неизвестно";
$возраст = $опции["возраст"] ?? "не указан";

Отладка PHP кода в консоли

Для отладки PHP скриптов в терминале удобно использовать встроенные функции: var_dump(), print_r() и echo. Они позволяют вывести содержимое переменных и проверить промежуточные значения.

Если требуется отслеживать выполнение по шагам, используйте флаг -d с параметром xdebug.mode=debug при наличии установленного Xdebug:
php -d xdebug.mode=debug script.php

php -d display_errors=1 -d display_startup_errors=1 -d error_reporting=E_ALL script.php

Для запуска интерактивного режима, где можно вводить и выполнять команды пошагово, используйте:

file_put_contents('log.txt', print_r($data, true));

Если скрипт использует аргументы, запускайте его с передачей параметров напрямую:

php script.php param1 param2. Для доступа к ним используйте массив $argv.

Для пошагового исполнения с точками останова установите psysh:
composer global require psy/psysh. После этого запустите:
psysh, подключите скрипт через require 'script.php' и выполняйте команды вручную.

Для анализа производительности добавьте в код hrtime(true) до и после интересующего участка. Разница покажет время выполнения в наносекундах.

Использование PHP встроенного веб-сервера в командной строке

Использование PHP встроенного веб-сервера в командной строке

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

  • Убедитесь, что PHP установлен. Проверка версии: php -v
  • Перейдите в директорию с проектом: cd /путь/к/папке
  • Запустите сервер: php -S localhost:8000

Команда php -S запускает сервер на указанном хосте и порту. Если не указать порт, будет использован 80, но для него часто требуются права администратора.

По умолчанию сервер ищет index.php. Если требуется другой файл в качестве точки входа, используйте параметр маршрутизатора:

php -S localhost:8000 route.php

В route.php можно реализовать простую маршрутизацию:

if (preg_match('/\.(?:png|jpg|jpeg|gif|css|js)$/', $_SERVER["REQUEST_URI"])) {
return false;
}
require 'index.php';

Для доступа к серверу с другого устройства в локальной сети укажите IP:

php -S 192.168.0.10:8000

Чтобы сервер не останавливался при закрытии терминала, используйте фоновый запуск:

nohup php -S localhost:8000 &

Для остановки сервера найдите PID:

ps aux | grep 'php -S'

И завершите процесс:

kill PID

Как настроить PHP для работы с терминалом на Windows и Linux

Как настроить PHP для работы с терминалом на Windows и Linux

Windows:

Скачайте дистрибутив с php.net/downloads. Используйте архивный вариант (Zip), не установщик. Распакуйте в удобную директорию, например: C:\php. Откройте «Свойства системы» → «Дополнительные параметры системы» → «Переменные среды». В разделе «Системные переменные» найдите Path и добавьте путь к папке с PHP (например, C:\php). Подтвердите изменения. Откройте терминал (cmd или PowerShell), введите php -v. Если отображается версия PHP – настройка завершена.

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

Linux:

Убедитесь, что пакетный менеджер актуален: sudo apt update (для Debian/Ubuntu) или sudo dnf check-update (для Fedora). Установите PHP: sudo apt install php или sudo dnf install php. Проверьте установку: php -v.

Для выполнения скрипта перейдите в директорию с файлом: cd /путь/к/файлу и выполните: php имя_файла.php. Если команда php не распознаётся, проверьте наличие бинарника в /usr/bin/php или используйте which php, чтобы уточнить путь. При необходимости добавьте его в переменную PATH через .bashrc или .zshrc.

Вопрос-ответ:

Ссылка на основную публикацию