Nếu bạn được phép chạy nhị phân gốc, thì đây là trình biên dịch của bạn:
https://github.com/ircmaxell/php-compiler
Đó là một trình biên dịch PHP được viết bằng PHP!
Nó biên dịch mã PHP thành mã VM của riêng nó. Mã VM này sau đó có thể được thông dịch bởi trình thông dịch riêng của nó (cũng được viết bằng PHP, không phải là điên sao?) Hoặc nó có thể được dịch sang Bitcode. Và bằng cách sử dụng khung trình biên dịch LLVM ( clang
và đồng), Bitcode này có thể được biên dịch thành nhị phân riêng cho bất kỳ nền tảng nào mà LLVM hỗ trợ (gần như bất kỳ nền tảng nào quan trọng hiện nay). Bạn có thể chọn thực hiện điều đó một cách tĩnh hoặc mỗi lần ngay trước khi mã được thực thi (kiểu JIT). Vì vậy, hai yêu cầu duy nhất để trình biên dịch này hoạt động trên hệ thống của bạn là trình thông dịch PHP đã cài đặt và clang
trình biên dịch được cài đặt .
Nếu bạn không được phép chạy nhị phân riêng, bạn có thể sử dụng trình biên dịch ở trên làm trình thông dịch và để nó diễn giải mã VM của chính nó, tuy nhiên điều này sẽ chậm khi bạn đang chạy trình thông dịch PHP đang chạy trên công cụ PHP, vì vậy bạn có một "giải thích kép".