Компиляция PHP в бинарный EXE исполняемый файл

Bambalam PHP EXE Compiler/Embedder 1.1 и 1.21

Bambalam PHP EXE Compiler/Embedder 1.1(скачать bamcompile1.1.zip 0.9 Mb) - именно так подписывает себя программа при компиляции php файлов в бинарные - exe. по собственному опыту могу сказать что программа это достаточно старая, помню её ещё примерно с начала 10-х годов 21-ого века. С тех пор она не обновлялась. Сразу же отмечу в сборке которую Вы можете скачать с этого файла версия PHP 4.4.2. Среди модулей Вам будут доступны mysql(но не mysqli или pdo), сокеты, не будет доступна работа с графикой от gd(если только не подключить её как отдельный модуль, возможно это или нет я сказать не могу), а так же не возможно получить контент с удалённого сайта функцией file_get_contents("http://blog.ivru.net"); кроме того не доступен SSL и соответственно HTTPS(хотя не могу сейчас точно сказать, может быть и есть какая то возможность подключить библиотеку openssl). А ещё не поддерживаются функции json_encode и json_decode, но это не является проблемой, поскольку можно использовать JSON класс для старых версий PHP(младше версии 5.2).

Компиляция осуществляется следующим образом

В командной строке(пуск выполнить cmd) выполняем
bamcompile [-options] index.php [index.exe]
где опции, это список опций(о нем чуть ниже) index.php - PHP файл который мы компилируем, index.exe бинарный файл который мы получаем после компиляции.

Список возможных опций bamcompile

Поскольку file_get_contents не работает с https можно использовать свою функцию на php_curl

PHP Compiler 2.1.0.2

Так же при поиске в Интернет по запросу "компиляция php в exe" можно найти программу - PHP Compiler 2.1.0.2 и ссылки на zip архив её содержащий PHPCompiler.zip размером 18 с чем то мегабайт, версия программы которую мне удалось опробовать датировалась примерно 2015 годом, версия PHP 5.2. Данную программу я не буду детально рассматривать, поскольку после компиляции хотя и создаётся exe файл, тем не менее в папке с данным exe файлом должны быть и другие файлы и папки, в частности содержащие бинарные файлы php, его dll расширения(то есть эти файлы не упаковываются в exe а лежат отдельно, хотя существует ли такая настройка точно сказать не могу), кроме того отдельно лежат файлы базы данных SQLite. Кроме того скомпилированный exe файл запускает Web сервер на IP 127.0.0.1 и порту 8080 и используя встроенный браузер подключается к нему. Такой web-сервер занимает порт 8080 до тех пор пока не закрыта программа которая была скомпилирована. Я проверил подключение из Firefox - удалось увидеть тот же контент что и из интерфейса программы. Поскольку это не та компиляция которую мне нужно было подключить, закончу на этом повествование про PHP Compiler 2.1.0.2.

PHP Compiler 2.1.0.2 - интерфейс и результат компиляции

Комментарии

Если у Вас возникли вопросы, Вы можете задать их в форме ниже. В частности если Ваш вопрос по Bitrix и что то не получается - можно спросить. Ваш e-mail не публикуется, при этом я отвечу на него если будет что то по теме. Писать необходимо для людей - избегайте сленга, пишите орфографически правильно.

Имя:
E-mail:
Текст комментария:

Вы так же можете прочитать следующие статьи: