由于开发需要,很多是不我们不得不对不同的网站使用不同版本的PHP,阅读完此文你将了解在Windows系统下怎么实现PHP多版本共存的方法。
本文测试环境为:Windows 10、IIS 10、PHP5.2、PHP5.3、PHP5.4、PHP5.6、PHP7.0
在IIS服务器根节点下打开“处理程序映射”,添加模块映射“FastCgiModule”,添加默认版本(此处以PHP5.6作为默认版本)的php映射。
我们在建立网站时,若需指定为其他版本,则修改网站的模块映射或新增模块映射。
接下来就是PHP在运行时加载的php.ini配置文件问题,我们从PHP手册了解到,5.2版本起,PHP可以从注册表中按顺序检查注册表目录,根据不同的版本加载不同的php.ini文件,具体注册表目录如下:
[HKEY_LOCAL_MACHINE\SOFTWARE\PHP\x.y.z]
[HKEY_LOCAL_MACHINE\SOFTWARE\PHP\x.y]
[HKEY_LOCAL_MACHINE\SOFTWARE\PHP\x]
其中的 x,y 和 z 指的是 PHP 主版本号,次版本号和发行批次。如果在其中任何目录下的IniFilePath有键值,则第一个值将被用作php.ini的位置。
至此,Windows系统下PHP多版本共存方法即完成了。
当然,我们还可以使用IIS自带的PHP Manager来进行PHP多版本的切换,具体安装及使用不在本文讲解范围内,请参见后续博文或进行百度搜索了解。