PHP онлайн - IDE, редактор, компилятор, интерпретатор

RSS

Выполняйте скрипты на PHP 8 онлайн в настоящем интерпретаторе PHP, скомпилированном в WebAssembly. Отлично подходит для проверки фрагментов кода, массивов, строковых функций и функций JSON.

PHP 8 (php-wasm) · Работает в браузере, поэтому ваш код никогда не попадает на наши серверы.
main.phpPHP
Результат

            
        
Ctrl/⌘ + Enter для запуска

Возможности онлайн-компилятора PHP (IDE, редактор и интерпретатор)

Пишите, запускайте и тестируйте код на PHP онлайн бесплатно. Эта страница — онлайн-IDE, редактор кода, компилятор и интерпретатор PHP в одном: введите код, нажмите «Запустить» и сразу увидите результат. Все работает в браузере — ничего не нужно устанавливать и не нужно создавать аккаунт.

  • Мгновенный запуск кода: PHP 8 (php-wasm), вывод менее чем за секунду после первой загрузки.
  • Редактор кода: подсветка синтаксиса, номера строк, подсветка парных скобок и автозакрытие скобок.
  • Понятные ошибки: сообщения об ошибках и предупреждения появляются в панели вывода так же, как на вашем компьютере.
  • Полноэкранный режим: Ctrl/⌘ + Shift + F, настраиваемый размер шрифта, расположение рядом или друг под другом и изменяемые размеры панелей.
  • Автосохранение: ваш код хранится в браузере; скачайте его как main.php или скопируйте одним щелчком.
  • Безопасные эксперименты: ограничение времени и кнопка «Остановить» прерывают бесконечные циклы.
  • Конфиденциальность: среда выполнения PHP работает на вашем устройстве, поэтому код никогда не загружается на сервер.
  • Темная тема и сочетания клавиш: Ctrl/⌘ + Enter запускает код.
  • Бесплатно: без регистрации и ограничений использования.

Изучайте другие языки программирования

Как пользоваться онлайн-компилятором PHP

  1. Напишите или вставьте скрипт на PHP в редактор. Открывающий тег <?php необязателен: если в коде вообще нет PHP-тегов, он добавляется автоматически. Шаблоны, где HTML смешан с блоками <?php ... ?>, тоже работают. Кнопка Сбросить пример возвращает стартовый код.
  2. Нажмите Запустить или используйте Ctrl + Enter (⌘ + Enter на Mac).
  3. Всё, что скрипт выводит через echo, print, printf или var_dump, появляется на панели Результат. Предупреждения и критические ошибки подсвечиваются.
  4. Выберите Ограничение времени: 5, 15 или 60 секунд. Скрипты, которые работают дольше, останавливаются автоматически, а кнопка Остановить немедленно завершает запуск.

При первом запуске загружается интерпретатор PHP, около 12 МБ. Браузер кэширует его, поэтому последующие запуски стартуют намного быстрее. Чтобы сохранить скрипт, используйте Копировать или main.php.

PHP работает локально внутри вашего браузера, поэтому ваш код никогда не отправляется на наши серверы и не хранится на них. Редактор запоминает последний скрипт в локальном хранилище вашего браузера и больше нигде.

Что поддерживается

Компилятор использует PHP 8 через php-wasm — интерпретатор PHP, скомпилированный в WebAssembly. Это не имитация: ваш код выполняет сам PHP.

  • Синтаксис PHP 8: типизированные свойства, объединённые типы, выражения match, именованные аргументы, стрелочные функции (fn), оператор nullsafe (?->) и перечисления, если их поддерживает встроенная версия.
  • Базовые функции для строк (str_contains, sprintf, explode), массивов (array_map, usort, array_filter), математики и дат.
  • JSON через json_encode и json_decode.
  • Регулярные выражения через функции preg_*.
  • Классы, интерфейсы, трейты, замыкания, генераторы и исключения.

Ограничения:

  • Нет сетевых расширений: curl, сокеты и HTTP-запросы недоступны.
  • Нет сервера баз данных: подключаться к MySQL или PostgreSQL не к чему. Чтобы потренироваться в SQL, воспользуйтесь онлайн-компилятором SQL.
  • Нет контекста веб-сервера: $_GET, $_POST, сессии и cookie не получают реальных данных запроса, а вывод HTML показывается как текст, а не отображается.
  • Нет пакетов Composer и нет стандартного ввода.

Краткий справочник по PHP

<?php
$prices = ['apple' => 1.20, 'bread' => 2.50, 'milk' => 0.99];

$expensive = array_filter($prices, fn($p) => $p > 1);
arsort($expensive);

foreach ($expensive as $item => $price) {
    printf("%-6s %5.2f\n", $item, $price);
}

$label = match (true) {
    count($prices) > 2 => 'big basket',
    default            => 'small basket',
};
echo $label, PHP_EOL;
echo json_encode($prices, JSON_PRETTY_PRINT), "\n";
ЗадачаСинтаксис
Переменная$name = "Ada";
Подстановка в строку"Hello, {$name}!"
Ассоциативный массив$a = ['key' => 'value'];
Цикл по ключам и значениямforeach ($a as $k => $v) { }
Просмотр значенияvar_dump($x); или print_r($x);
Оператор объединения с null$v = $a['x'] ?? 'default';

Советы

  • Завершайте строки символом "\n" или PHP_EOL: echo сам перевод строки не добавляет.
  • Используйте print_r($array) для компактного вывода вложенных массивов или var_dump(), когда нужны ещё и типы с длинами.
  • Для читаемого JSON передайте JSON_PRETTY_PRINT или вставьте вывод в инструмент Форматирование и валидация JSON, чтобы проверить его.
  • Каждый запуск начинается со свежего интерпретатора, поэтому переменные и функции из предыдущего запуска не сохраняются.
Совет: проверяете шаблон для preg_match? Сначала составьте и отладьте его в тестере регулярных выражений, а затем вставьте между разделителями, например '/^\d+$/'.

Частые вопросы

Нужно ли начинать код с <?php?

Нет. Если в скрипте нет тега <?php, он добавляется автоматически. Можно также писать HTML со встроенными блоками <?php ... ?>, точно как в файле .php на веб-сервере.

Можно ли подключиться к MySQL?

Нет. Интерпретатор работает в вашем браузере без доступа к сети и сервера баз данных. Для практики в SQL онлайн-компилятор SQL даёт настоящую базу данных SQLite прямо в браузере.

Почему не работают curl и file_get_contents() с URL?

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

Работает ли это так же, как PHP на сервере?

Для возможностей языка, функций для строк, массивов и JSON — да: это настоящий движок PHP. Всё, что зависит от веб-сервера, расширений или сети, работает иначе.

Обновлено

Комментарии

Оценок пока нет

Войдите, чтобы оценить этот инструмент.

Поделитесь советом, задайте вопрос или расскажите, как вам помог инструмент.

Комментариев пока нет. Расскажите первым, как всё прошло.

Скопировано в буфер обмена