Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/294.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
有没有一种方法可以将PHP作为比已安装版本更旧的版本执行?_Php_Version - Fatal编程技术网

有没有一种方法可以将PHP作为比已安装版本更旧的版本执行?

有没有一种方法可以将PHP作为比已安装版本更旧的版本执行?,php,version,Php,Version,我需要在服务器上支持一些遗留代码,在服务器上我需要始终使用最新的稳定PHP版本。我不可能在每次升级时都更新代码库,所以我想知道是否有一种方法可以使用比已安装版本更旧的PHP运行此特定站点 示例:我正在运行PHP5.3.3,我的旧站点代码被破坏了。它在5.2.x上运行得非常完美。我可以简单地在脚本的顶部放一个命令,以5.2.x的形式运行它,这样我就不必在下次升级到5.4、5.5等时修复损坏的代码了吗 TL;DR:有这样的功能吗: exec_as_php_版本('5.2.14');/不,没有。欢迎来

我需要在服务器上支持一些遗留代码,在服务器上我需要始终使用最新的稳定PHP版本。我不可能在每次升级时都更新代码库,所以我想知道是否有一种方法可以使用比已安装版本更旧的PHP运行此特定站点

示例:我正在运行PHP5.3.3,我的旧站点代码被破坏了。它在5.2.x上运行得非常完美。我可以简单地在脚本的顶部放一个命令,以5.2.x的形式运行它,这样我就不必在下次升级到5.4、5.5等时修复损坏的代码了吗

TL;DR:有这样的功能吗:


exec_as_php_版本('5.2.14');/

不,没有。欢迎来到版本依赖地狱。

它永远不会向前兼容


这是我之前看到的一个解决方案,但这是一个非常糟糕的主意:(链接不起作用)

在5.2.x和5.3.x之间真的不应该有那么多的中断。列表很短:@ceejayoz:不在列表中:任何新引入的函数都会导致定义具有该名称的函数的代码很难中止。至少在5年引入date_format()时,我的代码就是这样。2@ceejayoz从我发现的情况来看,没有一个函数/系统变量列表是完全折旧的(就像过去一样)。我正在维护旧的osCommerce代码。它使用了$HTTP_POST_VARS super-everywhere,它从4.1开始就贬值了,哈哈哈!从5.3开始,它终于完全消失了,而在5.2中,它起作用了。另外,因为它是一个变量,所以它不会抛出一个贬值的错误,所以甚至没有人看到它的到来:(@Michael,很好的调用。这对我来说是另一个问题。它在date_diff()上失败了,对我来说太难了。date_diff()是5.3的新版本,很好知道。我们希望它不会变得如此糟糕。回答中的链接已经过时。原始文章已经不存在。文章可在