Голосование по RFC о предзагрузке файлов завершилось. 48 членов core-team единогласно поддержали это предложение.
А значит в следующем году в 7.4 нас ждет новая возможность!
Инклуды? Кому это нужно!
В
php.ini будет добавлена директива opcache.preload в значении которой можно указать путь к файлу предзагрузки.Этот файл, в свою очередь, будет запущен и может подключить любые другие файлы просто делая
include/require или вызывая opcache_compile_file(). Все функции и классы, объявленные в предзагруженных файлах, будут всегда доступны для всех последующих запросов, как если бы это были встроенные элементы вроде
strlen() или Exception.Таким образом можно предварительно загрузить целиком фреймворк. Или скажем реализовать свой набор "встроенных" функций на PHP.
Платой за предзагрузку будет невозможность изменить предзагруженные классы. Для этого нужно будет рестартануть сервер.
В свежем PHP Roundtable Никита Попов и Сара Голман рассказывают об этом и других RFC, местами весьма интересно.