我为我的php项目创建了一个备份文件,然后卸载旧的xampp(php 5.x.x)。之后,我尝试安装最新的xampp version(php 7.0.1),并将备份文件从我的旧xampp放到新的中,包括它的数据库。问题是,当我试图运行我的旧文件时,我会遇到很多错误。似乎有许多代码已经过时于新的php版本。再次运行我的旧文件的最好方法是什么?我想我可能会重新安装旧的xampp,但我也想使用最新的php版本。理想的做法是什么?我读过一些关于它的文章,但我没有找到一个明确的解释。请帮帮忙。
发布于 2017-08-16 08:00:06
我找到了一个解决方案,只需安装一个Xampp,就可以从5.6、7.0和7.1中快速更改PHP的版本。
我目前正在使用它进行本地开发,没有出现问题,数据库保持不变,文件也保持不变:这使得httpd-vhosts.conf版本可以快速、轻松地更改。
从官方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
在**C中解压缩Xampp win32 32-7.1.7版本:**
将C:\xampp\php文件夹重命名为C:\xampp\php-7.1.7
来自Xampp win32 32-7.0.21版本
将C:\xampp\php中的\xampp\php文件夹解压到
然后将其重命名为C:\xampp\php-7.0.21
来自Xampp win32 32-5.6.31版本
将C:\xampp\php中的\xampp\php文件夹解压到
然后将其重命名为C:\xampp\php-5.6.31
转到C:\xampp\apache\conf\extra
并在httpd-xampp.conf中重命名httpd-xampp-php-7.conf文件。
从Xampp 32-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文件,每个要管理的.bat版本一个。
下面是要包含在各个文件中的代码:
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
pauseset-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
pauseset-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版本:
Considerations:
与在不同文件夹中安装多个版本的Xampp相比,此解决方案只允许有一个Xampp控制面板,并且只更改PHP版本,同时保持C:\xampp\ Apache \conf\Externhttpd-vhosts.conf文件中的batabase和任何apache自定义不变。
此外,该解决方案可以通过简单地将.bat文件(及其命令)更改为.sh for Linux,将.command更改为Mac文件(我个人没有在Linux和Mac上运行测试,但我希望这样做没有任何问题)就可以与Linux和Mac一起工作。
https://stackoverflow.com/questions/34757122
复制相似问题