[Это вопрос покрытия кода, но я надеюсь использовать его в производственной среде с целью точного определения кода, который можно удалить.]
Можно ли как-то записать, какие файлы являются частью выполнения PHP? То есть, когда файл загружается в рамках выполнения какой-то точки входа, есть ли способ зафиксировать этот факт? То есть, когда файлы включены, требуются или загружаются как часть загрузки классов - в дополнение к самому файлу php точки входа? (Часть загрузки классов, возможно, самая простая, так как вы можете справиться с загрузчиком классов самостоятельно).
Предыстория: у меня есть кодовая база с некоторым наследием, и в качестве очистки было бы неплохо удалить файлы, которые больше не используются. Этот трюк даст мне понять, какие файлы используются. Запустите эту регистрацию достаточно долго, и вы можете просто удалить все нетронутые.
«Уровень 2»: возможно, включены файлы, которые на самом деле не используются, т. е. включена некоторая библиотека функций, но выполнение фактически никогда не использует какие-либо функции. Как это отследить? Является ли XDebug и другие довольно навязчивые способы единственным вариантом?