C'è qualche riflessione / introspezione / magia in PHP che ti permetterà di trovare il file PHP in cui è stata definita una particolare classe (o funzione)?
In altre parole, ho il nome di una classe PHP o di un oggetto istanziato. Voglio passare questo a qualcosa (funzione, classe Reflection, ecc.) Che restituisca il percorso del file system in cui è stata definita la classe.
/path/to/class/definition.php
Mi rendo conto che potrei usare ( get_included_files())
per ottenere un elenco di tutti i file che sono stati inclusi finora e poi analizzarli tutti manualmente, ma è un sacco di accesso al file system per un singolo tentativo.
Mi rendo conto anche che potrei scrivere del codice aggiuntivo nel nostro meccanismo __autoload che memorizza queste informazioni da qualche parte. Tuttavia, la modifica del __autoload esistente è off limits nella situazione che ho in mente.
Sentire parlare di estensioni che possono farlo sarebbe interessante, ma alla fine mi piacerebbe qualcosa che possa essere eseguito su un'installazione "di serie".