Certains outils font ce que tu dis, je pense notamment à des outils style phpDoc / phpDocumentor, mais aussi d'autres scripts.
Par contre, j'ai du mal à imaginer ce que tu veux dire par :
Grep, preg_match_all() font bien l'affaire pour dépanner,
En effet, tu sais que les include()/include_once()/require()/require_once() peuvent être influencés dynamiquement (c'est là d'ailleurs que réside une partie de la puissance de php), par exemple :
Dans ce genre de cas (très fréquent) tu t'attends à ce que le programme te sorte une dépendance vers le fichier /var/toto/plop/unevaleur.php ? Si oui, tu rêves...
En gros, si tu connais les sources de ton appli, tu devrais pouvoir te débrouiller et faire un rapidement un outil qui fait exactement ce que tu veux, avec les expressions régulières par exemple.
Mais tu ne trouveras pas de script qui marche à 100% quelle que soit l'appli, à cause du genre de code dont je t'ai mis un exemple ci-dessus, totalement impossible à analyser à moins d'éxécuter le code....
Mon conseil perso : vu que tu es capable de te débrouiller avec les expressions régulières, termine le boulot que tu as commencé "pour dépanner".
# Oui et Non
Posté par Cali_Mero . En réponse au journal graphe de dépendances d'un source php. Évalué à 3.
Par contre, j'ai du mal à imaginer ce que tu veux dire par :
Grep, preg_match_all() font bien l'affaire pour dépanner,
En effet, tu sais que les include()/include_once()/require()/require_once() peuvent être influencés dynamiquement (c'est là d'ailleurs que réside une partie de la puissance de php), par exemple :
$truc='unevaleur';
// du code
$fichier = $truc.'.php';
$a = '/var/toto/plop/';
ini_set('include_path',$a);
include($fichier);
Dans ce genre de cas (très fréquent) tu t'attends à ce que le programme te sorte une dépendance vers le fichier /var/toto/plop/unevaleur.php ? Si oui, tu rêves...
En gros, si tu connais les sources de ton appli, tu devrais pouvoir te débrouiller et faire un rapidement un outil qui fait exactement ce que tu veux, avec les expressions régulières par exemple.
Mais tu ne trouveras pas de script qui marche à 100% quelle que soit l'appli, à cause du genre de code dont je t'ai mis un exemple ci-dessus, totalement impossible à analyser à moins d'éxécuter le code....
Mon conseil perso : vu que tu es capable de te débrouiller avec les expressions régulières, termine le boulot que tu as commencé "pour dépanner".