この記事は次の条件に当てはまる人向けの記事です。
- EmacsでPHPのコードを書いている
- flymakeで動的に文法チェックをかけている
- PHP 5.5以降向けのコードを書くことがある(ジェネレータなど)
- flymakeが文法チェックに使うPHPのバージョンが古いけど、どこで設定しているのかわからない
Emacs使いなのにflymakeすら使っていない人はEmacsのメリットを出しきれていないと思うので、PhpStormに切り替えるまたはEmacsと併用することをオススメします。ちなみに私自身もPhpStormとEmacsを併用しています。
flymakeが使うPHPのパスを変更する
flymakeが使うPHPのパスは変数値php-executableを利用しています。これをcustomizeで切り替えれば好きなPHPを使うことができます。このデフォルト値は「/usr/bin/php」なので、環境によっては古いPHPが使われてしまうというわけです。
これを変更するには、M-x customizeして、この値を「/usr/local/bin/php」などに設定すれば良いでしょう。僕は単に「php」としました。こうするとPATHから順に探してくれるようです。
蛇足ですが、EmacsのPATHは次の記事のようにinit.elで設定しておくと便利です。