PHP 8.0 已经正式发布

PHP 8.0 是 PHP 语言的一个主版本更新。它包含了很多新功能与优化项, 包括命名参数、联合类型、注解、构造器属性提升、match 表达式、nullsafe 运算符、JIT,并改进了类型系统、错误处理、语法一致性。

即时编译

PHP 8 引入了两个即时编译引擎。 Tracing JIT 在两个中更有潜力,它在综合基准测试中显示了三倍的性能, 并在某些长时间运行的程序中显示了 1.5-2 倍的性能改进。 典型的应用性能则和 PHP 7.4 不相上下。

关于 JIT 对 PHP 8 性能的贡献:

 JIT 对 PHP 8 性能的贡献 - 测试结果来自PHP.net
JIT 对 PHP 8 性能的贡献 – 测试结果来自PHP.net

新的类、接口、函数

类型系统与错误处理的改进

  • 算术/位运算符更严格的类型检测 RFC
  • Abstract trait 方法的验证 RFC
  • 确保魔术方法签名正确 RFC
  • PHP 引擎 warning 警告的重新分类 RFC
  • 不兼容的方法签名导致 Fatal 错误 RFC
  • 操作符 @ 不再抑制 fatal 错误。
  • 私有方法继承 RFC
  • Mixed 类型 RFC
  • Static 返回类型 RFC
  • 内部函数的类型 Email thread
  • 扩展 Curl、 Gd、 Sockets、 OpenSSL、 XMLWriter、 XML 以 Opaque 对象替换 resource。

其他语法调整和改进

  • 允许参数列表中的末尾逗号 RFC、 闭包 use 列表中的末尾逗号 RFC
  • 无变量捕获的 catch RFC
  • 变量语法的调整 RFC
  • Namespace 名称作为单个 token RFC
  • 现在 throw 是一个表达式 RFC
  • 允许对象的 ::class RFC

留下评论