在我的Windows

时间:2016-01-13 01:53:00

标签: php xampp version

我为我的php项目制作了一个备份文件,然后卸载旧的xampp(php 5.x.x)。之后,我尝试安装最新的xampp version(php 7.0.1)并将旧xampp中的备份文件放入包含其数据库的新文件中。问题是,当我尝试运行旧文件时遇到很多错误。似乎有很多代码已经过时的新PHP版本。再次运行旧文件的最佳方法是什么?我想我可能会重新安装旧的xampp,但我也想使用最新的php版本。什么是理想的事情?我已经阅读了一些关于它的文章,但我没有找到关于此的明确解释。请帮忙。

1 个答案:

答案 0 :(得分:20)

我找到了一个解决方案,只需安装一个Xampp,即可快速更改 5.6 7.0 7.1 的PHP版本。

我目前正在使用它在Windows上本地开发而没有问题,数据库保持不变以及Apache httpd-vhosts.conf 配置文件:这样可以快速更改P​​HP版本而且很容易。

从ApacheFriends官方网站下载 Windows便携版的最新3版Xampp(控制面板3.2.2):

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

C:\ 中解压缩Xampp win32-7.1.7版本 将 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版本。

以下是包含在各个文件中的代码:

设定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

设定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

设定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实时版本

更改PHP版本:
- 从Xampp控制面板停止Apache - 运行.bat文件来更改PHP版本(例如set-php-5.6.bat)
- 从Xampp控制面板启动Apache
- 转到http://localhost/dashboard/phpinfo.php页面

,在本地查看PHP实时版本

<强>考虑:

与在单独的文件夹中安装多个版本的Xampp相比, 此解决方案只允许一个Xampp控制面板,只更改PHP版本,同时保持C:\ xampp \ apache \ conf \ extra \ httpd-vhosts.conf文件中的batabase和任何Apache自定义不变。

此外,此解决方案可以与Linux和Mac一起使用,只需将.bat文件(及其命令)更改为.sh for Linux和.command for Mac文件(我个人没有在Linux和Mac上运行测试,但我期待它没有任何问题。)