PHP
Windows
インストール

Windows環境で複数バージョンのPHPをインストール

Apacheのインストール

まずは、Windows用のApacheをhttp://www.apachelounge.com/download/からダウンロードする。
そして、配置したいディレクトリにzipを解凍してconf\httpd.confのServerRootやDocumentRootなどを設定する。

httpd.conf
# D:\Server\Apache-2.4
ServerRoot "D:\Server\Apache-2.4"

PHPのインストール

Windows用のPHPをhttp://www.php.net/からダウンロードする。
そして、配置したいディレクトリにzipを解凍してphp.iniのextension_dirやinclude_pathを設定する。

php.ini
# D:\Server\PHP-7.2
include_path = ".;D:\Server\PHP-7.2\includes"
extension_dir = "D:\Server\PHP-7.2\ext"

ApacheでPHPバージョンの切り分ける

バージョンごとにApacheのhttpd.confhttpd-php.confD:\Server\Apache-2.4\conf\php-[version]\に作成してインクルードでconfを読み込む。

httpd.conf
# D:\Server\Apache-2.4\conf\php-7.2
Include D:\Server\Apache-2.4\conf\httpd.conf
Include D:\Server\Apache-2.4\conf\ext\httpd-*.conf
Include D:\Server\Apache-2.4\conf\php-7.2/httpd-*.conf
Include D:\Server\Apache-2.4\conf\vhosts\*.conf

バーチャルホストの設定はディレクトリを分けておくとPHPバージョンが変わっても共通にできるので便利。

httpd-php.conf
# D:\Server\Apache-2.4\conf\php-7.2
LoadFile "D:\Server\PHP-7.2\php7ts.dll"
LoadModule php7_module "D:\Server\PHP-7.2\php7apache2_4.dll"
<IfModule mime_module>
    AddType application/x-httpd-php .php
    AddType application/x-httpd-php-source .phps
    PHPIniDir "D:\Server\PHP-7.2\"
</IfModule>

ApacheをWindowsのサービスに登録する

サービスを登録する場合

httpd.exe -k install -n "Apache24-php72" -f "D:\Server\Apache-2.4\conf\php-7.2\httpd.conf"

サービスを削除する場合

httpd.exe -k uninstall -n "Apache24-php72"