我的项目PHP 5.3现在正在运行.现在我想将PHP升级到更高版本7.x.
我可以这样做吗?
在更新之前,我试图搜索差异和复杂性,但无法得到满意的答案.
搜索链接
链接1 - Updraft文章
链接2 - PHP手册
我还想知道是否需要更改当前在PHP 5.3上正确运行的代码?
任何建议将不胜感激.
小智 6
当前的稳定版本使用版本号PHP 5.6.经过一番争议后,开发团队决定在下一个主要版本中省略PHP 6的名称.PHP 6过去作为一个实验项目已经存在,但从未进入生产阶段.
Zend引擎自从1999年推出PHP 4版本以来一直在为PHP提供支持.Zend - 不要与Zend Framework混淆 - 是一个用C语言编写的开源执行引擎,它解释了PHP语言.当前的PHP 5.X系列使用Zend Engine II增强了初始引擎的功能,并为该语言添加了可扩展的对象模型和显着的性能增强.
PHP 7收到一个全新版本的引擎,代号为PHP#NG(下一代).3.两倍的速度
新的PHPNG引擎最容易识别的优势是显着的性能提升.PHPNG的开发团队重构了Zend Engine,并显着优化了内存使用.
结果?您可以在下面看到Zend Performance Team提供的性能基准测试.通过使用PHP 7,不仅可以更快地执行代码,而且还需要更少的服务器来为相同数量的用户提供服务.
至少可以说,处理致命和可捕获的致命错误对于PHP编码人员来说从来都不是一件容易的事.新的引擎异常将允许您用异常替换这些类型的错误.如果未捕获异常,PHP将继续返回与当前5.X系列中相同的致命错误.
new\EngineException对象不扩展\ Exception Base Class.这确保了向后兼容性,并在错误处理中产生两种不同的异常:传统异常和引擎异常.
为了使程序员能够同时捕获这两者,PHP 7引入了一个名为\ BaseException的新共享父类.
PHP是LAMP堆栈的重要成员,这意味着它的本机环境是Linux - 但它也可以在Windows系统上运行它.5.X系列尚未提供64位整数或大文件支持,因此到目前为止x64版本已被认为是实验性的.
PHP 7将改变这一点,因为它引入了一致的64位支持,这意味着将支持本机64位整数和大文件,从而使您可以在将来自信地在64位Windows系统上运行该语言.
Spaceship运营商以Combined Comparison Operator的正式名称运行.新运算符的表示法如下所示:<=>(有点像简化的宇宙飞船,如果你想象的那样).
如果两个操作数相等,则spacehip运算符返回0,如果左边是更大则返回1,如果右边更大则返回-1.它也被称为三向比较运算符,它已经存在于其他流行的编程语言中,如Perl和Ruby.
您是否曾想通过声明函数的返回类型来防止意外的返回值?好吧,新的PHP 7使开发人员能够在返回类型声明的帮助下提高代码质量.
下图描绘了一个非常简单的用例,其中foo()函数应该返回一个数组.在这里查看更复杂的示例
更多详情 - 阅读更多