例によってWindows10です。
ちょっとphpで書かれたツールを使ってます。phpのコードがコーディング規約に沿っているか調査&修正してくれるPHP CodeSnifferです。
しかし、私のWindows10にはphpの実行環境がインストールされていません。
WordPressのテーマを書いているのに!
そこで、phpの実行環境のみをインストールしました。
展開して、パスを通すだけ。簡単。
パッケージの選択
それでは、php公式サイトから単体の実行ファイルをダウンロードしましょう。
http://php.net/downloads.php
「Windows Downloads」とかあるから、ここでしょう。
リンクを先へ進むと……
いくつもありますね、バージョンが7.0/5.6 x86/x64 スレッドセーフ・ノンスレッドセーフ。 一体どれがよいのやら。そしてVC14とは?
ご安心下さい、ちゃんと案内があります。読みましょう。
Windows 上での PHP の手動インストール
Non-Thread-Safe(NTS) – IIS やその他の FastCGI ウェブサーバー (Apache と mod_fastcgi など) 用。また、コマンドラインのスクリプト用にもおすすめ。
x64 PHP 7.0+ の実運用環境用 (ただし、32ビット版のWindowsでは使えない)。
私のPCはWindows10 64bitで、今回の主たる用途はコマンドラインです。
なのでx64 Non-Thread-Safe(NTS) 版をダウンロードします。
展開して配置
Zipを解凍して、フォルダごとCドライブ直下のphpフォルダに入れました。
フォルダの位置はどこでもよいです。
パスを通す
Windows10ではパスを通す=環境変数へのPATH追記も人道的な記述方法になりました。
コントロールパネル > システム > システムの詳細設定 > 環境変数
と進みます。
ここでPATHを選択するとWindows7までは長い長い文字列の後ろに
C:\なんとかかんとかフォルダ名
を追記していました。
Windows10になって、リストで一覧できるようになりました!
(もっと早くこの機能は付けられなかったのか?)
ここに先に展開したphpのフォルダパスを追記します。
Visual Studio C++コンパイラのインストール
実行時に「DLLがない」とエラーが出る場合、コンパイラがインストールされてません。
PHP7.0を動かすにはVisual Studio 2015のVisual C++コンパイラが必要です。
PHP For Windows
The VC14 builds require to have the Visual C++ Redistributable for Visual Studio 2015 x86 or x64 installed
Microsoftより提供されていますので、インストールします。
Visual Studio 2015 の Visual C++ 再頒布可能パッケージ
x86/x64は、ダウンロードしたパッケージに合わせて選びましょう。
どっちも入れておいて問題ない気もします。
私のPCではVisual C++ 2012(VC11)などはx86/x64両方、ビルド番号違いで計4つも入っていました。
動作確認
Windows PowerShellなどでバージョンを確認してみましょう。
> php -v
表示されました。私のPCではバージョンは7.0.9です。
(2016年10月現在の最新は7.0.12)
これでPHP CodeSnifferが使えます。
CodeSniffer/WordPress用規約のインストールは今回は扱いませんが、サンプルとして掲載します。WordPressのテーマテンプレートへ実行するとこんな感じです。
47行目に「インデントにスペースは許可されていない、タブを使うこと」というアラートが出ていますね。
また「PHPCBFにてFIX可能」とも。
そうです、CodeSnifferではコーディングスタイルの修正もできます。
「パスを通す」とは何なのか
「パスを通す」というと大体は「ここを開いてこれを追記しとけ」としか書いてありません。
Q.パスを通さなければコマンドからexeファイルは実行できないのか?
A.通さなくても、フルパスで指定すれば実行できます。
他にも、私はTV録画の動画フォーマットの変換にffmpegというアプリケーションを使ってます。
コマンドラインやバッチから操作できます。Youtubeがこれをカスタマイズして使っているとも。
自分のPCで、ffmpegを使う際はフルパスで
C:\ffmpeg\bin\ffmpeg.exe ^
-f mp4 -t 0:30:00 -aspect 16:9 -s 1440x1080 -r 29.97 -bufsize 10000 ^
なんか大量のオプション指定が4行ぐらい
と指定しています。
自分用のバッチ処理でディレクトリも固定なので、フルパスで指定しています。
「環境変数のパスに追記する」すなわち「パスを通す」とは、OSに「コマンドを実行するためのファイルはここにあるよ」ということをあらかじめ伝えておく方法なのです。
他のアプリケーションからの呼び出しは常にフルパスとは限りません。
また、仮にフルパスで書いたとして、どこに実行ファイルがあるかは分かりません。
今回の例ではC:\phpに入れていますが、Dドライブに入れていても、コマンドの実行そのものには問題ないです。
(Windows側の制約で、exeファイルの実行できるフォルダが制限されている場合もあります。)
一方、環境変数で「パスの設定」をしておけば、コマンドの実行ごとにフォルダから指定しなくても、OSが実行ファイルを探してくれます。
インストーラーから入れると、この辺りのOSへの設定をやっておいてくれる場合も多いです。
以上、phpの単体インストールは、要点を押さえておけば実は簡単だという紹介でした。
特にPATHは知っておいて損はないです。