我找到了一种解决方案,只需安装一个 Xampp,即可快速将 PHP 版本从 5.6、7.0 和 7.1 更改。
我目前正在使用它在Windows本地开发没有问题,数据库保持不变,Apache httpd-vhosts.conf配置文件:这允许快速更改PHP版本并且很容易。
从 ApacheFriends 官方网站下载最新的 3 个版本的 Xampp(控制面板 3.2.2)windows 便携版:
xampp-portable-win32-7.1.7-0-VC14.zip
xampp-portable-win32-7.0.21-0-VC14.zip
xampp-portable-win32-5.6.31-0-VC11.zip
将Xampp win32-7.1.7版本解压到C:\
将 C:\xampp\php 文件夹重命名为 C:\xampp\php-7.1.7
来自Xampp win32-7.0.21版本
将 \xampp\php 文件夹解压到 C:\xampp\php
然后将其重命名为 C:\xampp\php-7.0.21
来自Xampp win32-5.6.31版本
将 \xampp\php 文件夹解压到 C:\xampp\php
然后将其重命名为 C:\xampp\php-5.6.31
转到 C:\xampp\apache\conf\extra
并重命名 httpd-xampp-php-7.conf
中的
httpd-xampp.conf 文件
从Xampp win32-5.6.31版本解压\xampp\apache\conf\extra\httpd-xampp.conf文件到C:\xampp\apache\conf\extra\ httpd-xampp.conf
然后将其重命名为 httpd-xampp-php-5.conf
在 C:\xampp** 中创建一个名为“**php-switch”的新文件夹并创建 3 个 .bat 文件,一个用于您要管理的每个 PHP 版本。
这是要包含在各个文件中的代码:
set-php-5.6.bat
@echo off
rmdir C:\xampp\php
mklink /J C:\xampp\php C:\xampp\php-5.6.31
del C:\xampp\apache\conf\extra\httpd-xampp.conf
copy C:\xampp\apache\conf\extra\httpd-xampp-php-5.conf C:\xampp\apache\conf\extra\httpd-xampp.conf
echo The version of PHP 5.6.31 is set
pause
set-php-7.0.bat
@echo off
rmdir C:\xampp\php
mklink /J C:\xampp\php C:\xampp\php-7.0.21
del C:\xampp\apache\conf\extra\httpd-xampp.conf
copy C:\xampp\apache\conf\extra\httpd-xampp-php-7.conf C:\xampp\apache\conf\extra\httpd-xampp.conf
echo The version of PHP 7.0.21 is set
pause
set-php-7.1.bat
@echo off
rmdir C:\xampp\php
mklink /J C:\xampp\php C:\xampp\php-7.1.7
del C:\xampp\apache\conf\extra\httpd-xampp.conf
copy C:\xampp\apache\conf\extra\httpd-xampp-php-7.conf C:\xampp\apache\conf\extra\httpd-xampp.conf
echo The version of PHP 7.1.7 is set
pause
好吧,是时候测试一切是否正常了:
- 运行您要设置的 PHP 版本的 .bat 文件(例如 set-php-7.1.bat)
- 启动 Xampp 控制面板并启动 Apache
- 前往http://localhost/dashboard/phpinfo.php页面查看本地PHP live版本
更改 PHP 版本:
- 从 Xampp 控制面板停止 Apache
- 运行 .bat 文件以更改 PHP 版本(例如 set-php-5.6.bat)
- 从 Xampp 控制面板启动 Apache
- 前往http://localhost/dashboard/phpinfo.php页面查看本地PHP live版本
注意事项:
与在单独的文件夹中安装多个版本的 Xampp 相比,
此解决方案允许只有一个 Xampp 控制面板,并且只更改 PHP 版本,同时保持 C:\xampp\apache\conf\extra\httpd-vhosts.conf 文件中的数据库和任何 Apache 自定义不变。
此外,此解决方案可以在 Linux 和 Mac 上使用,只需将 .bat 文件(及其命令)更改为 Linux 的 .sh 和 Mac 文件的 .command(我个人没有在 Linux 和 Mac 上运行测试,但我期望它完成没有任何问题)。