Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 20/11/2008, à 15:55

erlik

programme pour "linéariser" un script php ?

Hello

Je voudrais savoir s'il est possible de "lineariser"  un script php.
Je m'explique; je suis en train de modifier un script tres complexe ( un framework ) où les classes s'intriquent. Il est souvent difficile de retrouver où une variable est definie, où l'appel d'une fonction. Je voudrais donc pouvoir convertir tous ces appels en les remplacants par le code appellé ( includes, function, class ... ) et creer ainsi un nouveau script, mais où l'on peut plus facilment lire son "cheminement" , en transformer donc le code pour que les éléments qu’il contient soient présentés les uns à la suite des autres.

J'espere que je suis claire, et que vous pourrez m'aider...


Je ne suis pas un geek! Je suis un être humain!

Hors ligne

#2 Le 20/11/2008, à 16:00

®om

Re : programme pour "linéariser" un script php ?

Va falloir faire de l'analyse syntaxique/sémantique (comme pour un compilateur) je pense smile

Sinon, ce que tu veux faire s'appelle de l'inlining (mais dans le code source ici, normalement c'est le compilateur qui le fait).

Attention, il faut évidemment que tu n'aies pas de cycles dans les relations appelant/appelé (et pas seulement des instances, mais des classes) : si une instance de A appelle une méthode d'une instance de B, qui appelle une méthode sur une autre instance de A, tu pourras pas "inliner" tout (récursivité infinie).

Hors ligne

#3 Le 21/11/2008, à 12:29

erlik

Re : programme pour "linéariser" un script php ?

Merci ®om. Mais alors, comment faire un inlining avec PHP ?  ....
Car Google n'est pas d'une grande aide la dessus .....


Je ne suis pas un geek! Je suis un être humain!

Hors ligne

#4 Le 21/11/2008, à 19:52

Diidouuuuuu

Re : programme pour "linéariser" un script php ?

Si tu es prêt à investir un peu de temps dessus, je connais un framework de transformation syntaxique particulièrement efficace.

Il est composé de Sdf2 et Stratego/XT

Sdf2 : pour definir la syntaxe concrète et abstraite.
Stratego : un langage de transformation d'arbre de syntaxe abstraite

Un module de transformation générique est fournie :
http://strategoxt.org/Stratego/Addition … wnload#PHP
... Peut-être qu'il répondra à ton besoin.

Sinon, un exemple d'inlining est donné aussi dans la doc de Stratego au moyen de règles dynamiques :
http://releases.strategoxt.org/strategoxt-manual/unstable/manual/chunk-chapter/stratego-dynamic-rules.html

Voilà, si tu ne trouves pas d'outil adapté. Il te restera Stratego/XT.

#5 Le 22/11/2008, à 11:28

erlik

Re : programme pour "linéariser" un script php ?

Je viens de regarder les liens que tu presentes.
En effet, ça semble interessant, mais lourd .....

Je recherche juste à afficher un document avec le script php tel qu'il est interpreté par apache, en une page, pour plus facilement voir les fonctions, variables ou codes non exploités. Je pensais qu'un programme, style Eclipse, aurait permis cela.


Je ne suis pas un geek! Je suis un être humain!

Hors ligne