端くれプログラマの備忘録 PHP [PHP] Phanをセットアップする

[PHP] Phanをセットアップする

PhanはPHPの静的解析ツール。

GitHub – phan/phan: Phan is a static analyzer for PHP. Phan prefers to avoid false-positives and attempts to prove incorrectness rather than correctness.
https://github.com/phan/phan

Phanのインストール

$ composer require phan/phan
$ ./vendor/bin/phan
The php-ast extension must be loaded in order for Phan to work. See https://github.com/phan/phan#getting-started for more details. Alternately, invoke Phan with the CLI option --allow-polyfill-parser (which is noticeably slower)

php-ast extensionが無いと叱られたので、以下のページの説明に倣ってphp-astをインストールする。

GitHub – nikic/php-ast: Extension exposing PHP 7 abstract syntax tree
https://github.com/nikic/php-ast#installation

$ sudo pecl install ast
$ sudo vi /etc/php/7.3/cli/php.ini
extension=ast.so
$ ./vendor/bin/phan -v
Phan 2.2.3

Phanが動くようになったら設定ファイルを作って実行する。

参考サイト

Phanで静的解析 – Qiita
https://qiita.com/msmsny/items/46aaeda7e565cfc7ec48

Phan静的解析がもたらす大PHP型検査時代 – pixiv inside [archive]
https://devpixiv.hatenablog.com/entry/2016/11/11/202656