Detalii soft:
Versiune: 2.0.1 Actualizat
Incarca data: 10 Apr 16
Licenţă: Gratuit
Popularitate: 67
PHP biblioteca a fost scrisă în scopul analizei codului.
Se citește pur și simplu codul și arată-l ca o matrice a arborelui de sintaxă.
Prin manipularea matrice putem manipula, de asemenea, codul.
Pentru începători, documentația este prevăzută cu proiectul
Ce este nou în această versiune:.
- Piese de coarde de siruri de caractere encapsed sunt acum reprezentate folosind `scalar & # x5c; noduri EncapsStringPart`. Anterior, au fost utilizate șiruri prime. Acest lucru afectează `` copilul parts` de scalar & # x5c; Encaps` și `Expr & # x5c; ShellExec`. Schimbarea a fost făcută pentru a permite atribuirea de atribute pieselor string encapsed.
Ce este nou în versiunea 2.0.0:
- Piese de coarde de siruri de caractere encapsed sunt acum reprezentate folosind ` scalar & # x5c; noduri EncapsStringPart`. Anterior, au fost utilizate șiruri prime. Acest lucru afectează `` copilul parts` de scalar & # x5c; Encaps` și `Expr & # x5c; ShellExec`. Schimbarea a fost făcută pentru a permite atribuirea de atribute pieselor string encapsed.
Ce este nou în versiunea 1.4.0 / 2.0.0-alfa1:
- `NameResolver` rezolvă acum indicii de tip parametru atunci când intră în / metoda / nod funcția de închidere. Alte astfel de vizitatori să fie difuzate după aceasta va fi în măsură să facă uz de numele rezolvate la acel moment deja.
- autoincarcatorul nu se mai setează `opțiunea .ini unserialize_callback_func` cu privire la înregistrarea -. Acest lucru nu este necesar și poate cauza probleme atunci când rulează teste PHPUnit cu izolare proces
Ce este nou în versiunea 1.3.0:
- `NameResolver` acum problema se rezolva indicii de tip parametru când se care intră în / metoda / nod funcția de închidere. Alte astfel de vizitatori să fie difuzate după aceasta va fi în măsură să facă uz de numele rezolvate la acel moment deja.
- autoincarcatorul nu se mai setează `opțiunea .ini unserialize_callback_func` cu privire la înregistrarea -. Acest lucru nu este necesar și poate cauza probleme atunci când rulează teste PHPUnit cu izolare proces
Ce este nou în versiunea 1.2.2:
- `NameResolver` acum problema se rezolva indicii de tip parametru când se care intră în / metoda / nod funcția de închidere. Alte astfel de vizitatori să fie difuzate după aceasta va fi în măsură să facă uz de numele rezolvate la acel moment deja.
- autoincarcatorul nu se mai setează `opțiunea .ini unserialize_callback_func` cu privire la înregistrarea -. Acest lucru nu este necesar și poate cauza probleme atunci când rulează teste PHPUnit cu izolare proces
Ce este nou în versiunea 1.1.0:
- vizitatorii nod poate reveni acum `NodeTraverser :: DONT_TRAVERSE_CHILDREN `` din enterNode () `, în scopul de a sări peste toți copiii din nodul curent, pentru toți vizitatorii.
- Declararea o proprietate abstract sau final este acum o eroare.
- constructori adăugată pentru trăsături și namespace.
- Clasa, interfata, trăsătură, funcția, metoda și a proprietății constructori suportă acum adăugarea de comentarii doc folosind `setDocComment () metoda`.
- Adăugat suport pentru numele complet calificat și spațiu de nume relativ la constructori. Nu mai permite utilizarea tablourilor de componente de nume.
- Nu adăugați documentație și teste pentru fișierele arhivă de distribuție.
Ce este nou în versiunea 1.0.1:
- Disallow expresii noi fără un nume de clasă. Anterior, nouă; a fost considerat în mod accidental să fie cod valid.
- jeton Support T_ONUMBER utilizat de HHVM.
- Adăugat capacitatea de a trece direct codul pentru scriptul php-parse.php.
- Prevenirea trunchierea var_dump () de ieșire în scriptul php-parse.php în cazul în care se utilizează XDebug.
Ce este nou în versiunea 1.0.0:
- `Template` Eliminat perimate și` clasele TemplateLoader` .
- unserializer XML fix pentru a funcționa corect cu noi nume de nod namespaced.
Ce este nou în versiunea 0.9.4:
- Există acum este un constructor pentru interfețe ( `PHPParser_Builder_Interface `).
- O interfață pentru traversation nodul a fost adăugat: `PHPParser_NodeTraverserInterface`
- fix de imprimare destul de `expresii include` (informație precedență lipsește).
- Fixed & quot; indicele nedefinit & quot; anunțuri care la generarea jetoanele așteptate pentru o eroare de sintaxă.
Ce este nou în versiunea 0.9.3:
- Adăugat suport pentru expresii arbitrare în gol ().
- Adăugat suport pentru matrice constantă / string dereferencing.
- Adăugat suport pentru expresii de randament. Aceasta adaugă un nou tip de expresie randament, cu subnoduri cheie și valoare.
- Adăugat suport pentru cele din urmă. Aceasta adaugă un nou finallyStmts subnode la nodul TryCatch. În cazul în care nu există nici o clauză în cele din urmă va fi nul.
Ce este nou în versiunea 0.9.2:
- Adaugat Class - & # x3e; getMethods () , care returnează toate metodele conținute în matrice stmts a nodului de clasă. Acest lucru nu ia în considerare metode moștenite.
- Adăugat isPublic (), isProtected (), isPrivate (). isAbstract (), isFinal () și isStatic () la nodurile Conturi cu acces ClassMethod, de proprietate și de clasă. (De proprietate și de clasă, evident, au doar relevante pentru a le Conturi cu acces.)
- parsarea fixă de noi expresii în paranteze, de exemplu a reveni (nou Foo);.
- mecanism Adăugat pentru a adăuga atribute la noduri din Lexer.
- fix vizitator NameResolver pentru a rezolva, de asemenea, nume de clasă în blocuri de captură.
Cerințe :
- PHP 5.4 sau mai mare
Limitări :
- încă în dezvoltare. S-ar putea schimba drastic de la o versiune la alta.
Comentariile nu a fost găsit