ANALYSE VARIABLES PHP

Signaler
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
-
Messages postés
97
Date d'inscription
lundi 26 novembre 2001
Statut
Membre
Dernière intervention
24 février 2012
-
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/49325-analyse-variables-php

Messages postés
97
Date d'inscription
lundi 26 novembre 2001
Statut
Membre
Dernière intervention
24 février 2012

Bon, je continue le développement de ce programme ici...
J'y ai intégré quelques petites choses sympas :
- gestion du rtf
- fichiers ini
- choix du format de sortie (rtf, html, texte)
- impression
- copier
Messages postés
97
Date d'inscription
lundi 26 novembre 2001
Statut
Membre
Dernière intervention
24 février 2012

Merci :-) !

J'avais pas vu que la demande était d'il y a 5 ans !
Je me suis fait avoir par le fait que c'était la 1ère de la liste :-)

Bon, si j'ai bien compris, ce code passerait mieux en codyx...

Je le mettrais dc qd j'aurais fini de le compléter.

à+
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
35
je ne sors pas de gourdin, désolé si j'ai donné l'impression de t'attaquer, ce n'était pas du tout le but!

"petit code" => codyx.org
donc par nature déjà, ton code ne restera pas

mis à part, par besoin non plus de regex juste pour repérer des "$" (même pour une question posée il y a 5 ans)

pour ce qui est de la syntaxe "trop vb6" :

CHR(NUM) à remplacer par Convert.ToChar(NUM)

DIR => à remplacer par System.IO.Directory.GetFiles
un exemple adapté (avec récursivité) ici :
http://www.codyx.org/snippet_lister-tous-fichiers-repertoire_198.aspx#2307
X LCASE(...)> à remplacer par X = Tachaine.ToLower
reste à voir l'utilité de mettre tous ces fichiers en minuscule...

Resultat.Text &= ..., (même en VB6 d'ailleurs) on évite d'ajouter dans un "controle" en continue, çà fait perdre beaucoup de temps
on préfèrera concaténer dans une chaîne puis afficher le tout à la fin
et en VB.NET çà ne sera pas une STRING mais un System.Text.StringBuilder ; bien plus adapté

vbcrlf, à remplacer par Environment.NewLine

X = "------------->" & NomFichier & "<---------------" & vbcrlf
on évite de concaténer de cette manière, format est là pour çà
x = string.format("-------------> {0} <---------------{1}", NomFichier, Environment.NewLine)

Debug.Print à remplacer par system.console.writeline

UBound(Lignes) à remplacer par Lignes.GetUpperBound

CStr(i + 1) est correct, on utilisera néanmoins plus couramment (i + 1).ToString

et plus globalement on ne fera pas de trim sur le tableau, puisqu'ici tu ne récupères pas la valeur "trimée"

çà donnerait donc :

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim Buffer As System.Text.StringBuilder = New System.Text.StringBuilder()
Dim myMatches As MatchCollection
Dim Variables As New Regex("(\$(\w+)((\[((""|')+\w*(""|')+)+\])|(->\w*))?)")
Dim i As Int32 = 0

Dim Files() As String = System.IO.Directory.GetFiles("C:\Program Files\wamp\www", "*.php", IO.SearchOption.AllDirectories)
For Each file In Files
Dim Lines() As String = System.IO.File.ReadAllLines(file)
Buffer.AppendLine(String.Format("-----> {0} <-----", file))
i = 0
For Each line As String In Lines
myMatches = Variables.Matches(line.Trim)
For Each results As Match In myMatches
i += 1
Buffer.AppendLine(String.Format("{0}) {1}", i, results.Value))
Next results
Next line
Next file
Resultat.Text = Buffer.ToString
End Sub

bonne continuation
Messages postés
97
Date d'inscription
lundi 26 novembre 2001
Statut
Membre
Dernière intervention
24 février 2012

hello

Peut être à aider ce genre de demande ?
http://www.vbfrance.com/forum/sujet-REGEX-TROUVER-VARIABLES_282827.aspx

:-)
Si je mets un code ici, c'est pour qu'il soit didactique, critiqué et amélioré...
Je ne vois pas pourquoi tu veux le supprimer.

Tu dis mi vb6 mi vb.net, c'est vrai que je dois avoir de sales habitudes vb6 (je me suis mis au vb2008 que depuis peu), dis moi ce qui ne va pas, plutôt que de sortir un gourdin :-)

à+
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
35
salut,
quel est le but de ce partage? un petit script à usage unique pour tes besoins, un simple parsing de texte mi vb6 mi vb.net...

ce code ne sera pas conservé