发布于 2018-01-29 05:19:31
当前的稳定版本使用的是PHP5.6版本号。经过一些争论之后,开发团队决定在下一个主要版本中省略PHP 6的名称。PHP 6已经作为一个实验项目存在于过去,但从未达到生产阶段。
Zend引擎从1999年开始为PHP提供动力,当时PHP 4发行版推出了Zend引擎。Zend --不要混淆Zend -是一个用C编写的开放源代码执行引擎,它解释PHP语言。当前的PHP5.X系列使用Zend,它增强了初始引擎的功能,并添加了一个可扩展的对象模型,并显著提高了语言的性能。
PHP 7接收到一个全新版本的引擎,其代码名称为PHP#NG (下一代)。
新的PHPNG引擎最容易识别的优点是显着的性能改进。PHPNG的开发团队重构了Zend引擎,并显着地优化了内存的使用。
结果呢?您可以在下面看到Zend性能团队提供的性能基准。通过使用PHP 7,不仅可以更快地执行代码,而且还需要更少的服务器来为相同数量的用户服务。
至少,对于PHP程序员来说,处理致命和可捕捉的致命错误从来都不是一件容易的事情。新的引擎异常将允许您将此类错误替换为异常。如果未捕获异常,PHP将继续返回与当前5.X系列中相同的致命错误。
新的\EngineException对象不扩展\Exception基类。这确保了向后兼容性,并导致错误处理中的两种不同类型的异常:传统异常和引擎异常。
为了使程序员能够同时捕获两者,PHP 7引入了一个名为\BaseException的新共享父类。
PHP是LAMP堆栈的一个重要成员,这意味着它的本地环境是Linux --但也可以在Windows系统上运行它。5.X系列还没有提供64位整数或大型文件支持,因此到目前为止,x64构建还被认为是实验性的。
PHP 7将改变这一点,因为它引入了一致的64位支持,这意味着本地64位整数和大文件都将被支持,这允许您在未来的64位Windows系统上自信地运行该语言。
太空船运算符以组合比较运算符的正式名称运行。新运算符的表示法如下所示:<=>
(有点像简化的宇宙飞船,如果你想得对的话)。
如果两个操作数相等,空间运算符将返回0
,如果左边更大,则返回1
,如果右侧更大,则返回-1
。它也被称为三向比较操作符,它已经存在于其他流行的编程语言中,如Perl和Ruby。
您想过通过声明函数的返回类型来防止意外返回值吗?新的PHP 7使开发人员能够通过返回类型声明来提高代码的质量。
下面的图像描述了一个非常简单的用例,其中foo()
函数应该返回一个数组。在这里查看更复杂的示例
有关更多详细信息:阅读更多
发布于 2016-03-28 22:52:43
您可以在php.net上找到单个主要PHP版本的更改日志,包括迁移指南(例如,http://php.net/manual/en/migration54.php)。
关于向后兼容性,请查看以下链接:http://php.net/manual/en/migration70.incompatible.php
https://stackoverflow.com/questions/36277310
复制相似问题