在线客服
扫描二维码
下载博学谷APP
扫描二维码
关注博学谷微信公众号
还有几个月,PHP8就要在2020年11月26日发布了。作为一个全新的升级版本,PHP8做出了许多的重大调整和改变。相信大家都迫不及待想了解,PHP8的新特性有哪些?本文为大家总结归纳了PHP8新特性的一些亮点,一起来看看吧!

1、JIT进入PHP8
JIT就是Just-In-Time的缩写,中文翻译为即时编译。它作为一种编译器策略,将代码表述为一种中间状态,在运行时将其转换为依赖于体系结构的机器码,并即时执行。在 PHP 中,这意味着 JIT 将为 Zend VM 生成的指令视为中间表述,并以依赖于体系结构的机器码执行,也就是说托管代码的不再是 Zend VM,而是更为底层的 CPU。为什么要让JIT进入PHP8呢?因为JIT从底层开始优化PHP的性能,突破了PHP性能优化的瓶颈。
2、PHP8支持Union Types
Union Types,中文翻译为联合类型。它支持接收多个不同类型的值,它是两种或多种类型的集合,使用时可以选择其一。如今不仅仅是PHP,许多其他的开源生态的标准库中,都在广泛的使用联合类型。而PHP8支持Union Types,将会允许将更多类型信息从 phpdoc 迁移至函数签名。我们可以看到,继泛型之后,联合类型是目前类型声明系统中最大的突破口。
3、PHP8中支持static返回类型
虽然PHP已经可以返回self了,但是考虑到PHP具有动态类型的性质,PHP8的新特性增加了static返回类型,对于许多开发者来说,是相当使用的调整和改变了。
class Foo
{
public function test(): static
{
return new static();
}
}
4、增加注解
这里的Attributes也就是其它语言中的annotations(注解),它提供了一种向类添加元数据的方法,不需要解析文档块。
5、PHP8引入了弱引用
WeakMaps 允许创建从对象到任意值的映射(类似 SplObjectStorage),而不会阻止对用作 key 的对象进行垃圾回收。只要将对象添加到 WeakMap 中,GC 在触发条件时就可以将其占用内存回收。
class Foo
{
private WeakMap $cache;
public function getSomethingWithCaching(object $obj): object
{
return $this->cache[$obj]
??= $this->computeSomethingExpensive($obj);
}
}
以上就是关于PHP8的新特性总结,大家对此次的PHP8新版本有什么看法呢?
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
为什么PHP开发要选择Laravel框架?
程序员在使用框架开发程序的时候,可以保持一致性,而且工作会更加灵活。那么在为什么PHP开发中,大多数人要选择Laravel框架呢?答案很简单,当然是因为使用Laravel框架有很多好处,比如开箱即用的用户身份验证,约定优于配置的方法,轻松使用的电子邮件功能等等,Laravel框架的优势是显而易见的。下面小编将深度解析Laravel框架,为大家详细分析一下Laravel框架的优势。
8638
2019-12-04 16:58:28
PHP开发工程师招聘有哪些要求?
为什么说PHP是世界第一的语言呢?作为许多小型网站的开发语言,PHP语言在社区和电商领域的应用极为广泛。根据许多大型网络招聘平台的统计,目前PHP开发工程师的人才缺口巨大,其一线城市的薪资待遇也基本在15K起步。讲到这里,相信大家都会好奇PHP开发工程师招聘有哪些要求呢?下面我们来看看目前招聘方对于PHP开发岗位工作内容和掌握技能的具体要求。
11091
2020-01-13 12:02:41
PHP架构师完整进阶路线规划
PHP架构师可以说是站在开发技术金字塔尖的IT工程师,所以要从一名普通的程序员进阶成为PHP架构师,光凭盲目的努力远远不够,还需要科学地规划学习内容和成长路线。下面小编为大家准备了PHP架构师完整进阶路线规划,一起来看看吧!
10069
2020-07-31 11:04:20
PHP从入门到精通需要多长时间?
PHP从入门到精通零基础参加PHP培训班一般要学习6个月左右,有基础可能更快一些,学习周期长短因人而异,要结合自己的实际情况制定学习计划,学习过程中保证学习效果,以目标为导向。
6629
2021-02-25 14:01:13
PHP培训一般学什么内容?选什么从业方向?
PHP的从业方向分为3类,全栈工程师需要掌握前端、后端、移动端、服务器端开发技术,熟悉互联网系统架构思想,小到网页设计、网站开发,大到系统架构、性能调优等内容;后端工程师熟练掌握PHP后端开发技术,新浪一样的门户网站,淘宝一样的商城系统,斗鱼一样的视频直播系统等;前端工程师掌握Web前端开发技术,移动APP开发、微信小程序开发、酷炫的网站开发、桌面应用开发等。
8669
2021-05-04 16:51:18
