PHP Parser

Software screenshot:
PHP Parser
Dettagli del software:
Versione: 2.0.1 Aggiornato
Data di caricamento: 10 Apr 16
Sviluppatore: Nikita Popov
Licenza: Libero
Popolarità: 17

Rating: 4.0/5 (Total Votes: 1)

Il PHP Parser biblioteca è stata scritta a scopo di analisi del codice.

Si legge semplicemente il codice e lo mostra come un array di albero di sintassi.

Manipolando l'array possiamo anche manipolare il codice.

Per i principianti, la documentazione viene fornita con il progetto

Cosa c'è di nuovo in questa versione:.

  • parti delle stringhe encapsed ora sono rappresentati con `scalare & # x5C; nodi EncapsStringPart`. In precedenza sono stati utilizzati stringhe raw. Questo influenza il bambino `parts` di` scalare & # x5C; Encaps` e `Espr & # x5C; ShellExec`. Il cambiamento è stato fatto per consentire l'assegnazione di attributi alle parti stringa encapsed.

Cosa c'è di nuovo nella versione 2.0.0:

  • parti delle stringhe encapsed sono ora rappresentati usando ` Scalar & # x5C; nodi EncapsStringPart`. In precedenza sono stati utilizzati stringhe raw. Questo influenza il bambino `parts` di` scalare & # x5C; Encaps` e `Espr & # x5C; ShellExec`. Il cambiamento è stato fatto per consentire l'assegnazione di attributi alle parti stringa encapsed.

Cosa c'è di nuovo nella versione 1.4.0 / 2.0.0-alpha1:

  • Il `NameResolver` ora risolve tipo di parametro suggerimenti quando si entra / metodo / node funzione di chiusura. Come tali altri visitatori esecuzione dopo che sarà in grado di utilizzare i nomi risolti in quel punto già.
  • Il caricatore automatico non è più imposta l'opzione `unserialize_callback_func` ini sulla registrazione -. Questo non è necessario e può causare problemi durante l'esecuzione di test PHPUnit con l'isolamento dei processi

Cosa c'è di nuovo nella versione 1.3.0:

  • Il `NameResolver` ora risolve tipo parametro suggerimenti quando entrare nel / metodo / node funzione di chiusura. Come tali altri visitatori esecuzione dopo che sarà in grado di utilizzare i nomi risolti in quel punto già.
  • Il caricatore automatico non è più imposta l'opzione `unserialize_callback_func` ini sulla registrazione -. Questo non è necessario e può causare problemi durante l'esecuzione di test PHPUnit con l'isolamento dei processi

Cosa c'è di nuovo nella versione 1.2.2:

  • Il `NameResolver` ora risolve tipo parametro suggerimenti quando entrare nel / metodo / node funzione di chiusura. Come tali altri visitatori esecuzione dopo che sarà in grado di utilizzare i nomi risolti in quel punto già.
  • Il caricatore automatico non è più imposta l'opzione `unserialize_callback_func` ini sulla registrazione -. Questo non è necessario e può causare problemi durante l'esecuzione di test PHPUnit con l'isolamento dei processi

Cosa c'è di nuovo nella versione 1.1.0:

  • i visitatori nodo possono ora tornare `NodeTraverser :: DONT_TRAVERSE_CHILDREN `` da enterNode () `per saltare tutti i figli del nodo corrente, per tutti i visitatori.
  • Dichiarare una proprietà come astratto o finale è ora un errore.
  • costruttori aggiunto per i tratti e gli spazi dei nomi.
  • La classe, interfaccia, tratto, di funzione, di metodo e proprietà costruttori ora supportano l'aggiunta di commenti di documentazione utilizzando il `setDocComment () metodo`.
  • Aggiunto il supporto per i nomi pienamente qualificati e namespace-relativi a costruttori. non consentono più l'uso di array di componenti nome.
  • Non aggiungere documentazione e test per i file di archivio di distribuzione.

Cosa c'è di nuovo nella versione 1.0.1:

  • Non consentire nuove espressioni senza un nome di classe. In precedenza nuova; è stato accidentalmente considerato codice valido.
  • gettone Supporto T_ONUMBER usati per HHVM.
  • Aggiunta la possibilità di passare direttamente il codice per lo script php-parse.php.
  • Prevenire troncamento di var_dump () Uscita nello script php-parse.php se XDebug viene utilizzato.

Cosa c'è di nuovo nella versione 1.0.0:

  • Rimosso deprecate `template` e` classi TemplateLoader` .
  • unserializer XML corretto per funzionare correttamente con nuovi nomi nodo namespace.

Cosa c'è di nuovo nella versione 0.9.4:

  • Vi è ora un costruttore per le interfacce ( `PHPParser_Builder_Interface `).
  • Una interfaccia per il traversation nodo è stato aggiunto: `PHPParser_NodeTraverserInterface`
  • fissi piuttosto stampa del `espressioni include` (informazioni precedenza mancava).
  • fissi & quot; indice indefinito & quot; avvisi quando si generano i gettoni previsti per un errore di sintassi.

Cosa c'è di nuovo nella versione 0.9.3:

  • Aggiunto il supporto per le espressioni arbitrarie a vuoto ().
  • Aggiunto il supporto per costante di matrice / string dereferencing.
  • Aggiunto il supporto per le espressioni di rendimento. Questo aggiunge un nuovo tipo di espressione del rendimento, con sottonodi chiave e valore.
  • Aggiunto il supporto per finalmente. Questo aggiunge un nuovo finallyStmts sottonodo al nodo TryCatch. Se non vi è alcuna clausola finally sarà nullo.

Cosa c'è di nuovo nella versione 0.9.2:

  • Aggiunto Class - & # X3e; GetMethods () funzione che restituisce tutti i metodi contenuti nella matrice stmts del nodo di classe. Ciò non tiene metodi ereditati in considerazione.
  • Aggiunto isPublic (), isProtected (), IsPrivate (). isAbstract (), isfinal () e isStatic () di accesso ai nodi classmethod, di proprietà e di classe. (Di proprietà e di classe, ovviamente, hanno solo le funzioni di accesso che li riguardano.)
  • l'analisi fisso di nuove espressioni tra parentesi, ad esempio tornare (new Foo);.
  • meccanismo di aggiunta per aggiungere attributi ai nodi nel lexer.
  • fissi visitatore NameResolver per risolvere anche i nomi delle classi in blocchi catch.

Requisiti :

  • PHP 5.4 o superiore

Limitazioni :

  • Ancora in fase di sviluppo. Potrebbe cambiare drasticamente da una versione all'altra.

Programmi simili

rdf-spec
rdf-spec

10 Dec 15

clinch
clinch

10 Dec 15

Apache log4net
Apache log4net

9 Feb 16

fluxbb-cache
fluxbb-cache

5 Jun 15

Commenti a PHP Parser

I commenti non trovato
Aggiungi commento
Accendere le immagini!
Ricerca per categoria