Access: 2084922
p-lux.net Ver.10.00 by Ryogo
AlmaLinux9 に phpstan をインストールしたので覚書
■はじめに

phpstanはphpのバグなどを調べてくれるツール。
頻繁にインストールしないのとphpstan.neonの書き方が新バージョンで少し変わっていたので、一からメモ。

なお、composerはサーバにインストールされており、
この覚書ではcomposerの実行ユーザを vendor であるものとする。
(rootでなければ好きなユーザ名で構わない)


■phpstan をインストール

# sudo -u vendor composer global require phpstan/phpstan


■ phpstanだけでコマンドを使えるようにする。(任意)

# echo 'export PATH="/home/vendor/.composer/vendor/bin:$PATH"' > /etc/profile.d/phpstan.sh
# chmod 644 /etc/profile.d/phpstan.sh

設定を即時反映
# source /etc/profile.d/phpstan.sh


以上



■使い方

・基本形
# phpstan analyse /var/www/html/

・出力をテキストで保存したい場合
# phpstan analyse /var/www/html/ > phpstan_result.txt



■ phpstan.neonのススメ

簡易的チェックであれば不要なのだが、
本格的にチェックしたいとなるとneonファイルを作ってチェックしたほうが無難。
例えば、上位のフォルダにライブラリがある場合や
解析レベルを変更したい場合など作っておいた方が何かと便利。


■phpstan.neon を置きたい場所に移動

# cd /var/www/html/xxx/

このようなプロジェクトルートにphpstan.neonを作るのが最も楽ではあるが、
ルートを汚したくない場合が多いはず。
その場合は、後に--configurationパラメータで指定する手もある。

# cd /var/www/html/xxx/neon/

今回は例としてプロジェクトフォルダにあるneon/というフォルダにphpstan.neonを作ってみる。


■ phpstan.neonの作成し保存

# nano phpstan.neon
上記で編集できるが、
アップロードできるなら普段遣いのエディタで作ってSFTPなどでアップロードしてもよい。


■ phpstan.neonの編集

詳細な設定は調べてもらうとして、ヒントとしてはこんなパラメータが使える。

parameters:
level: 5

# paths の指定
# CWD (コマンド実行場所) を基準にパスを解決
paths:
- %currentWorkingDirectory%/public
- %currentWorkingDirectory%/system

# 解析実行前に、指定したオートローダーファイルを読み込ませる
bootstrapFiles:
- %currentWorkingDirectory%/system/vendor/autoload.php

# vendor ディレクトリを除外
excludePaths:
- %currentWorkingDirectory%/system/vendor/*



■使い方(phpstan.neonを使った実行)

# cd /var/www/html/xxx/

プロジェクトルートに移動。
phpstan.neonを置いてある場所ではないので注意。
phpstan.neonに書いた %currentWorkingDirectory%が 今の作業ディレクトリになる。

# phpstan analyse --configuration=neon/phpstan.neon

phpstan.neon を読み込んで実行。

© 2003-2025 p-lux.net, Ryogo.

ページトップへ