Задать вопрос

Как определить время первой компиляции (генерации байткода) объекта PHP?

В мыслях крутится вот такая интересная идея, искал в интернете и собственно даже поисковый запрос в голову не приходит :)

Задача: создать объект (файл с описанием класса), который сможет настроить свое окружение (зависимости от других объектов и т.д.) при первом вызове.

Ограничения:
Объект не должен делать эти лишние проверки после первой компиляции (генерации байткода).

Т.е. получается следующее:
Пишем объект рассылки писем MyMail, который способен отправлять разными способами. В конструкторе проверяем, был ли он скомпилирован или взят байт-код из кэша.

Если был скомпилирован, значит, проверяем возможности сервера на наличие тех или иных функций, и создаем файл конфигурации. И в дальнейшем отправка будет осуществляться доступным способом.

Есть варианты конечно:
в режиме отладки проверять постоянно окружение, а в продакшн - не проверять,
проверять наличие конфига, ( а если файл класса изменился? ) и т.д.
но хотелось бы универсальности... думаю, источник байт-кода как раз был бы отличным "флажком"
any ideas?
  • Вопрос задан
  • 2485 просмотров
Подписаться 4 Оценить Комментировать
Ответ пользователя mumrum К ответам на вопрос (3)
@mumrum Автор вопроса
Нашел нужную информацию в apc_cache_info(), однако доставать её довольно накладное дело. Возможно есть еще способ :)
Ответ написан