Якщо вам дозволено запускати справжні рідні бінарні файли, то це ваш компілятор:
https://github.com/ircmaxell/php-compiler
Це компілятор PHP, написаний на PHP!
Він компілює PHP-код до власного коду VM. Цей код VM може бути або інтерпретований його власним інтерпретатором (також написаний на PHP, чи не божевільний?), Або його можна перекласти на біткод. І використовуючи рамку компілятора LLVM ( clang
і спільно), цей Bitcode може бути скомпільований у основний бінарний файл для будь-якої платформи, яку підтримує LLVM (майже будь-яка платформа, яка має значення сьогодні). Ви можете зробити це статично або кожен раз перед виконанням коду (стиль JIT). Отже, єдині дві вимоги до цього компілятора для роботи у вашій системі - це встановлений інтерпретатор PHP та встановлений clang
компілятор.
Якщо вам заборонено запускати нативні бінарні файли, ви можете використовувати компілятор вище як інтерпретатор і дозволити інтерпретувати власний код VM, але це буде повільно, оскільки ви використовуєте інтерпретатор PHP, який сам працює на двигуні PHP, у вас є "подвійне тлумачення".