PHPパーサライブラリは、コード分析の目的のために書かれました。
これは単にコードを読み取り、構文木の配列としてそれを示しています。
は、配列を操作することによって、我々はまた、コードを操作することができます。
初心者のため、ドキュメントをプロジェクトに提供されます。
このリリースの新機能:encapsed文字列の
この文字列の部分は現在 `スカラ&#を使用して表現されていますx5c; EncapsStringPart`ノード。以前は生の文字列を使用しました。これは、スカラー&#x5c `の` parts`子に影響します。Encaps`と `Exprに\ ShellExec`。変化はencapsedストリング部分に属性の割り当てを可能にするために行われています。
このバージョン2.0.0の新機能である:encapsed文字列の
この文字列の部分は現在 `スカラ&#x5cを使用して表現されます。EncapsStringPart`ノード。以前は生の文字列を使用しました。これは、スカラー&#x5c `の` parts`子に影響します。Encaps`と `Exprに\ ShellExec`。変化はencapsedストリング部分に属性の割り当てを可能にするために行われています。
このバージョンの新機能1.4.0 / 2.0.0-アルファます。
`関数/メソッド/クロージャーノードに入るときNameResolver`は現在、パラメータの型ヒントを解決します。それの後に実行されているような他の訪問者は、すでにその時点で解決された名前を使用することができるようになりますように。
オートローダは、もはや登録上の `unserialize_callback_func`のiniオプションを設定していない - これは必ずしも必要ではなく、プロセスの分離とPHPUnitテストを実行するときに問題が発生することがあります。
このバージョン1.3.0の新機能:
この `関数/メソッド/クロージャーノードに入るときNameResolver`は現在、パラメータの型ヒントを解決します。それの後に実行されているような他の訪問者は、すでにその時点で解決された名前を使用することができるようになりますように。
オートローダは、もはや登録上の `unserialize_callback_func`のiniオプションを設定していない - これは必ずしも必要ではなく、プロセスの分離とPHPUnitテストを実行するときに問題が発生することがあります。
このバージョン1.2.2の新機能:
この `関数/メソッド/クロージャーノードに入るときNameResolver`は現在、パラメータの型ヒントを解決します。それの後に実行されているような他の訪問者は、すでにその時点で解決された名前を使用することができるようになりますように。
オートローダは、もはや登録上の `unserialize_callback_func`のiniオプションを設定していない - これは必ずしも必要ではなく、プロセスの分離とPHPUnitテストを実行するときに問題が発生することがあります。
このバージョン1.1.0の新機能:
このノードの訪問者は、現在のノードのすべての子をスキップするためにenterNode() ``から `NodeTraverser :: DONT_TRAVERSE_CHILDREN`を返すことができます。 、すべての訪問者のため。
抽象または最終としての性質を宣言することになりましエラーです。
形質および名前空間のビルダーを追加しました。
クラス、インターフェイス、形質、関数、メソッドとプロパティビルダー今 `setDocComment()`メソッドを使用して、docコメントの追加をサポート。
ビルダーで完全修飾と名前空間-相対名のサポートが追加されました。名前成分の配列の使用を許可しなくなりました。
配布アーカイブファイルにドキュメントやテストを追加しないでください。
このバージョン1.0.1の新機能です:
このクラス名を指定せずに新しい表現を許可しません。以前は新しいです。誤って有効なコードであると考えられました。
HHVMで使用されるサポートT_ONUMBERトークン。
直接のphp-parse.phpスクリプトにコードを渡せるようにしました。
XDebugのが使用されている場合のphp-parse.phpスクリプト内のvar_dump()の出力の切り捨てを防ぎます。
このバージョン1.0.0の新機能です:
この `Template`と` TemplateLoader`クラス廃止予定削除しました。
適切に新しい名前空間ノード名で動作するように修正されたXML unserializer。
このバージョン0.9.4の新機能です:
このようになりましインタフェース( `PHPParser_Builder_Interface`)のためのビルダーがあります。
ノードtraversationためのインタフェースが追加されました: `PHPParser_NodeTraverserInterface`
`include`式の固定かなり印刷(優先情報が欠落していました)。
固定"未定義のインデックス"通知構文エラーのために期待されるトークンを生成します。
このバージョン0.9.3の新機能です:
この空の中の任意の式のサポートを追加しました()。
定数配列/文字列の参照解除のためのサポートが追加されました。
降伏式のサポートが追加されました。これは、サブノードキーと値を持つ、新しい降伏式の型を追加します。
最終的にするためのサポートが追加されました。これはTryCatchノードに新しいfinallyStmtsサブノードを追加します。句は全く最終的に存在しない場合は、nullになります。
このバージョン0.9.2の新機能です:
この追加されたクラス - &#のSpark Proの、getMethods()関数、クラスノードのSTMTS配列に含まれるすべてのメソッドを返します。これは、アカウントに継承されたメソッドを取ることはありません。
追加されたisPublic()、isProtected()、isPrivate()。 isAbstract()、isfinalを()とisStaticは()です。ClassMethod、プロパティとクラスのノードにアクセサ。 (プロパティとクラスは明らかにのみ、それらに関連するアクセサを持っています。)
括弧内の新しい表現の固定された構文解析、例えば、リターン(新しいフー);.
レクサー内のノードに属性を追加するための仕組みを追加しました。
また、catchブロック内のクラス名を解決するための固定NameResolver訪問者。
この要件ます。
PHP 5.4以上
この制限事項:
このそれでも開発インチ他の1つのバージョンから大幅に変更される可能性があります。
コメントが見つかりません