普段は Vagrant 上に Composer をインストールしていた
昨今の PHP 開発では Composer は必須であるが私はいつも Vagrant 上の VM に Composer をインストールしており vagrant ssh
した上で composer install / update
するなどしていた。
それでも勿論良いのだが PhpStorm 上に Vagrant や Composer のメニューが有り PhpStorm から出ずに vagrant up
から vagrant ssh
していろいろやったり composer update
したりが可能になっている。
このメニューを使用するには PhpStorm 側にローカルの Composer の実行パスを教える必要がある。
つまりローカルに Composer をインストールする必要があった。
そして Composer を使うには PHP が必要となるので PHP をインストールして Composer をインストールする手順を記す。
macOS の場合はほぼ Linux の場合と同じなのでやりやすいが Windows の場合は意外と困る。 あと PHP をインストールするのは Xampp を使うと楽なのだが余計な Apache や MariaDB はインストールしたくないので素の PHP をインストールすることとする。
PHP インストール
Windows 用の PHP バイナリをダウンロードするサイトがあるのでここからダウンロードする。 バージョンは使いたいものでいいと思うが、現時点での最新は PHP 7.1 なのでそれをダウンロード。 Non Thread Safe か Thread Safe のどちらがいいのかというところだが Apache を使う場合は Thread Safe にせよとの事らしい。 コマンドラインから使うだけの分にはどちらでも良さそうだ。
ダウンロードした zip を適当な位置に解凍する。
自分は C:\php71
にした。
その後コマンドラインから実行する為に PATH を通す。
よくある手順だがコントロールパネルの「システムの詳細設定」からの「環境変数」を押下。
自分だけに適用したい場合は「ユーザー環境変数」、ユーザ全員に適用したい場合は「システム環境変数」の PATH を選択する。
そこに先程 PHP をコピーしたディレクトリ C:\php71
を追記する。
php.ini
さて、用意した PHP にはまだ php.ini
が無い。
だが元となる php.ini-development
が置いてあるので、それをコピーして php.ini
にリネームする。
ちなみに本番環境では php.ini-production
を使うが、今回の場合は実行時にエラーメッセージが表示される development の方がいい。
そして php.ini
の以下の場所のコメントアウトを外す (;
を削除する):
; Windows だと ext ディレクトリに DLL が全て入っている
extension_dir = "ext"
; CakePHP 3 インストールに必要
extension=php_intl.dll
extension=php_mbstring.dll
; Composer インストールに必要
extension=php_openssl.dll
コマンドプロンプトを開き php -v
などと叩き、正しく PHP バージョンが表示されることを確認する。
Composer
Composer のダウンロードページで Composer-Setup.exe
をダウンロードして実行する。
ここでローカル PHP のパスを聞かれるので、先程インストールしたものを教える。
コマンドプロンプトを開き composer
と叩き正しく Composer のコマンドリストが表示されるのを確認する。
インストールが完了すると Composer が C:\ProgramData\ComposerSetup\bin\composer
に入る (ProgramData は隠しフォルダなのでエクスプローラで普通にたどると見えないので注意)。
後は PhpStorm 側でこのパスを教えるなどすれば良い。