|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre confirmé
![]() Inscription : mars 2008 Messages : 260 ![]() |
Bonjour,
Je me trouve devant un problème assez épineux. Je travail sur un petit script qui me permet de retrouver des informations de couverture de code avec xdebug. Cependant, j'ai besoin d'inclure un fichier php à la fin de chaque fichier à suivre. Modifier ces fichiers n'est pas pour moi un problème, je peux modifier mes fichiers pendant mes tests, c'est d'ailleurs ce que je tente de faire. Le souci viens alors du fait qu'un fichier php peux ne pas terminer sa balise php, c'est à dire commencer avec <?php et ne jamais voir le ?> derrière. Je retrouve ceci dans une grande partie du projet mais pas tous. Existe-t-il un moyen ne serait-ce que de détecter si le fichier php en question termine avec sa balise php fermée ou non ? Je dispose bien évidemment du nom du fichier, je peux l'ouvrir, récupérer et modifier son contenu. Je suis conscient des problèmes possibles liés aux commentaires (à la fois php et html), c'est pourquoi je préfère demander si cela n'existe pas déjà plutôt que de réinventer la roue et refaire un analyseur php. Cordialement, Grimly |
|
|
00
|
|
|
#2 |
|
Membre Expert
![]() Baptiste ROUSSELÉtudiant Inscription : janvier 2011 Messages : 802 ![]() |
Tu rajoutes du code donc, pourquoi ne pas faire ceci dans le code rajouté :
Ainsi si la balise n'est pas fermée => commentaire Si la balise était fermée => parasite HTML "//" |
|
|
00
|
|
|
#3 | |
|
Membre confirmé
![]() Inscription : mars 2008 Messages : 260 ![]() |
Citation:
Dans le même genre, "<!-- ?> -->" inclus des parasites dans les deux cas et est bien pire. L'idée que j'essaie actuellement d'implémenter est la suivante : retirer tous les commentaires html (<!-- -->) retirer toutes les balises html et balises php fermées (<>, </>, <?[php|=] ?>) retirer tous les commentaires multilignes php (/* */) retirer tous les commentaires php restants (//) retirer toutes les chaines de caractères (" ") regarder si il reste une balise php ouverte (<?[php|=]) C'est un cas vicieux à cause de tous ces types de commentaires valides pas aux mêmes endroits et j'imagine que même mon idée aura des exceptions. Si une autre solution existe, elle reste intéressante. |
|
|
|
00
|
|
|
#4 |
|
Membre confirmé
![]() Inscription : mars 2008 Messages : 260 ![]() |
Re bonjour,
Un collègue qui viens d'arrivé m'a aiguillé vers le tokenizer de php et voici donc le résultat de mes recherches fructueuses du web : http://php.net/manual/fr/function.token-get-all.php Bref, quand on cherche "analyseur", il faut chercher "token" ![]() J'espère que cela servira à d'autres. |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com