PHPerKaigi 2023
採択
2023/03/24 14:05〜
Track B
レギュラートーク(20分)
オンライン登壇

PHP Parserで学ぶPHP

inouehi

PHP ParserとはPHPのコードをパースするライブラリです。これは静的解析やコードの操作等に用いられます。例えば、PsalmやPHPStanがこれを利用しています。

そんな言わばPHPを最もよく知るライブラリからPHPのことを学ぼうというのが本トークのテーマです。

本トークではPHPを構成する要素に着目します。PHP Parserはコードをパースし、ノードと呼ばれる単位に分解します。静的解析はノードを一つ一つ読み取り、コードを解釈します。ノードは170種類以上あるのですが、それはPHPが多様な要素から成ることを物語っているように思います。

ノードの定義を読み解くことで、PHPにおける文や式とは何なのか、どんなバリエーションがあるのか、PHPはどんなパーツから成り立っているのか等を確認したいと思います。(また、その過程でPHP Parserについても少し理解できると思います。)