我们使用PHP 7.0运行XAMPP,因为我们的新产品需要PHP 7。

但也有一些旧的项目使用mysql_connect等函数。这些在PHP 7.0中被删除。

那么,是否有一种方法可以轻松地在XAMPP中更改PHP版本?

注意:请不要建议将旧项目升级到与新版本兼容,因为我无法做到这一点 这些决定是我作为开发人员(只是一名员工)无法得到的。


当前回答

您可以有两个不同版本的XAMPP。

Download those files from https://www.apachefriends.org/download.html and install into a directory of your choice, for example in C:\5.6.31\xampp and C:\7.1.18\xampp. After every installation go to installed directory (ex. C:\5.6.31\xampp, C:\7.1.18\xampp) and start the "setup_xampp.bat" and you should see something like this. You can make shortcuts of "xampp-control.exe" on your desktop (right click on "xampp-control.exe" Send to -> Desktop) and rename shortcuts for ex. "xampp 5.6.31" and "xampp 7.1.8". Start XAMPP control panel with double-click on "xampp-control.exe" or previously created shortcut and start Apache and MySQL servers. To test installiation open your browser and type 127.0.0.1 or localhost in the location bar. You should see XAMPP start screen. Do not open more then one XAMPP control panel. XAMPP uninstall? Simply remove the "xampp" Directory. But before please shutdown the apache and mysql. That's all. You can use different php versions opening corresponding XAMPP control panel.

其他回答

除非它必须是绝对的XAMPP,否则您可以尝试使用WAMP得到您想要的东西。 WAMP几乎是相同的东西,只是包装不同。

一旦你安装了它,你可以在这里切换php版本:

您可以根据需要安装任意版本的PHP。

下面是具体的操作步骤。

点击这里:WAMP下载

然后选择你的基础服务器,例如最新的php7。

然后,当WAMP 3安装完成后,进入文件夹:addons并选择你想要的php版本。他们提供了从php 5.3.29开始的php版本,它应该与mysql_connect一起工作。

要安装插件,在安装过程中(双击exe文件)只需指向安装WAMP 3的文件夹。

然后您可以使用其他文件夹的内容,如:应用程序等,以添加更多的功能

所有东西都是接口的,所以您可以专注于编码,而不是破坏您的环境。

我建议使用Xampp PHP切换器由JackieDo。 在非常简单的安装之后,你可以使用命令xphp switch [VERSION]来更改php版本。

你不需要在这个配置上浪费时间,只需要使用MAMP:)

MAMP在界面上有PHP版本选择功能。

我推荐使用Docker,它允许你将环境分成不同的组件,并在任何时候混合和匹配你想要的组件。

Docker将允许您运行一个容器与MySQL,另一个与PHP。因为它们是独立的映像,所以你可以有两个容器,一个是PHP 5,另一个是PHP 7,你可以任意启动一个,端口80可以映射到两个容器。

https://hub.docker.com有许多预配置的映像,您可以轻松地安装和运行这些映像。

我还添加了portainer作为一个映像,它允许您从docker映像中管理docker设置的各个方面(我在启动时启动了这个容器,以避免使用命令行)。它不能为你做所有的事情,有时从命令行配置和启动图像更容易,但一旦设置好,你可以通过web界面启动和停止它们。

也可以同时运行两个容器,并将单独的端口映射到每个容器。因此,端口80可以映射到PHP 5, 81可以映射到PHP 81(或者PHP 7,如果你在2017年看这个)。

有各种关于如何安装Docker的教程(https://docs.docker.com/engine/installation/)和其他“如何”输入的东西。尝试http://www.masterzendframework.com/docker-development-environment/获取开发环境配置。

我知道这是旧的帖子,但我想分享有一个库仍然运行mysql_connect()在PHP 7。 它通过覆盖实际函数来工作(mysql_connect()被工作在这个库上的mysqli_connect()覆盖)。

我从这个视频https://www.youtube.com/watch?v=Eqd-jJu4sQ4中找到的

希望能有所帮助