У меня есть модифицированная версия PHP, которая скомпилирована в PHP, в PHP. Меня не интересует дискуссия о том, почему я не должен этого делать; лучшие практики, стандарты и т. д .; так что, пожалуйста, не надо.
Он не модифицирован в ядре, но грубо использует PHP-скрипт для изменения каждого PHP-файла перед его оценкой. Из-за снижения производительности при модификации каждого файла в настоящее время я кэширую каждый файл, однако это не идеальное решение, потому что:
- Сохраняются две копии каждого файла
- Возможно изменить неправильный файл
- Серверы с дрянным хостингом не допускают
file_put_contents()
, поэтому кэш должен обновляться на локальном сервере
Альтернативным решением является оценка каждого файла во время выполнения, однако это приводит к дополнительным расходам и также требует eval()
, что может быть медленнее и не выдает такие же сообщения об ошибках, как include()
.
Я хотел бы знать, есть ли лучший способ сделать это, предпочтительно тот, который работает на серверах, которые не разрешают file_put_contents()
.