2020年 4月 執筆
背景
いままでWindows10に直にPHP最新版をインストールしていましたが、
ダウングレードを行う必要があったので、バージョン管理ツールを導入することにしました。
せっかくなので、手順を簡潔にまとめました。
当記事は、Scoopというバージョン管理ツールを導入し、PHPのバージョン切り替えができるようになるまでの手順のメモになります。
※当記事ではコマンドラインツールを使用します。特にこだわりのない方は、Windows標準搭載の PowerShell というツールを使うといいと思います。
※Node.jsをはじめ、PHP以外の言語でも対応できるものがあるようですが、当記事ではPHPのバージョン管理のみを目的としています。他言語の場合、意図したバージョンに対応していない場合もあるそうです。
手順1. PHPをアンインストール
すでにPHPをインストール済みの場合、Scoop経由で導入したPHPと競合する恐れがあるので、削除したほうが無難です。
PHPのインストーラがある場合
- インストールをダブルクリックして「uninstall」を押す。
PHPのインストーラがない&コントロールパネルの一覧に表示されている場合
- コントロールパネル > プログラムのアンインストールまたは変更 へ移動する。
- PHP関連のものを削除する。
PHPのインストーラがない&コントロールパネルの一覧に表示されていない場合
- コマンドラインツールを立ち上げる。
-
gcm php | fl
と入力し、php.exeのパスを調べる。(whichコマンドは使えなかったので) - php.exeが入っているフォルダを削除する。
- C:\Windows 配下に php.ini やdll関連ファイルがあれば、それも削除する。
手順2. Scoopをインストール
コマンドラインツールを立ち上げScoopをインストールする。
iex (new-object net.webclient).downloadstring('https://get.scoop.sh')
ここで
PowerShell requires an execution policy of 'RemoteSigned' to run Scoop.
To make this change please run:
'Set-ExecutionPolicy RemoteSigned -scope CurrentUser'
というエラーが発生する場合は、エラーメッセージに記載のあるコマンド叩いて、再びインストールを試みてください。
Set-ExecutionPolicy RemoteSigned -scope CurrentUser
手順3. Scoopで過去バージョンのインストールをできるようにする
過去バージョンをインストールできるようにするため、
versions
というバケットを追加する。
scoop bucket add versions
手順4. 任意のバージョンのPHPをインストールする
scoop search
コマンドで、インストール可能なバージョンを確認する。
scoop search php
'main' bucket:
という項目に最新バージョン、
'versions'bucket:
という項目に過去バージョンが表示される。
scoop install
コマンドを使用して、任意のバージョンのPHPをインストールする。
scoop install php php55 php71
(複数インストールする場合は、上のように半角スペースで区切れば複数指定可能)
手順5. PHPのバージョンを切り替える
scoop reset
コマンドで、任意のバージョンに切り替える。
scoop reset php71
補足. PHPの設定ファイルを確認/作成する。
確認
設定ファイルを確認する場合は
C:\Users\ユーザー名\scoop\persist\php\cli\php.ini
を確認する。
(非常に長いファイルなので、コマンドラインに出力するよりも、GUI(エクスプローラー)上で確認するか、PowerShellにvimを導入して編集モードで展開した方がよいです。)
作成
設定ファイルを作成する場合は
C:\Users\ユーザー名\scoop\persist\php\cli\conf.d
に、任意の名前の .ini ファイルを作成する。