Всем привет. Сегодня довольно часто можно услышать от разработчиков такой термин как «песочница». Для тех, кто не сталкивался с этим, это может быть очередной загадкой, о том, что это такое. Секретов тут нет, давайте для большего понимания немного внесём пояснение. Песочницей, главным образом, называют среду, которая организована специально для отладки кода. Предположим, у вас есть некий кусок кода, который нужно посмотреть в работе, и его необходимо выполнить отдельно от вашего проекта. Песочница, в таком случае, послужит безопасным окружением для выполнения кода, где можно наблюдать его поведение и вести его отладку.
Для разных языков программирования существует различный ассортимент песочниц, которые учитывают ту или иную специфику интерпретации языка. Мы же в данном посту рассмотрим известные песочницы для языка PHP. Некоторые из-них позволяют выполнять тестирование кода в режиме online.
Первый, более кардинальный подход — это поднятие своей PHP-песочницы, посредством расширения Runkit. Посредством Runkit вы можете поднять некую виртуальную машину PHP. Посредством экземпляра класса Runkit_Sandbox создается отдельный поток основного процесса с собственным окружением и выделенной памятью. Кроме того, посредством параметров можно управлять функционалом интерпретатора в песочнице, и реализуя таким образом безопасное окружение для выполнения кода.
Согласитесь, не всегда есть необходимость разворачивать Runkit на вашем сервере. Бывает достаточно иметь простой инструмент под рукой для теста небольших участков кода. Иногда необходимо протестировать небольшие куски кода. В PHP существуют так называемые интерактивные режимы, которые в большой степени используются в командной строке. Бесспорно, они отлично подходят для быстрых тестов, однако для стоит коду немного вырасти и всё это дело начинает переходить в неудобства для обработки в одной строке CLI.
Неплохим решением для этих задач может послужить наличие консоли PHP в вашем браузере. Одно из таких решений было придумано разработчиком Хорди Боггани, который довольно часто сталкивался с такой необходимостью, что в итоге и привело к созданию подобного инструмента. Представьте у вас есть небольшой php-скрипт, который вы можете ввести в браузере, и выполнить его. Ведь это весьма просто и полезно, согласитесь.
https://github.com/seldaek/php-console
Если у вас нет частой потребности в наличии PHP песочницы, либо по каким-либо причинам вы не хотите её заводить, вы можете использовать специальные онлайн-сервисы. Таким образом, код будет выполняться на стороне сервиса, вам же будет выдаваться результат выполнения. Это так же может быть очень удобно, для тестирования вашего кода. Онлайн инструментов так же большое количество.
https://wtools.io/php-sandbox
http://ideone.com/
http://www.tehplayground.com/
http://sandbox.onlinephpfunctions.com/
http://codepad.org/
https://eval.in/
http://3v4l.org/
http://www.compileonline.com/execute_php_online.php
http://www.exorithm.com/algorithm/sandbox
Большинство сервисов из данного списка так же поддерживают и другие языки программирования. Таким образом, вы можете подобрать для себя наиболее удобный для вашего использования, и одновременно универсальный инструмент. На этом пока всё, всем всего доброго!
Кстати, если вы знаете другие подобные сервисы, делитесь ими в комментариях.