PHP7-php8 严格类型

PHP7的性能提升主要是zval结构的改进,HashTable的改进等等优化累积起来的效果。严格模式带来的更多是编码风格上的规范,强制编码者按照规范进行传参,返回值等操作(以前的PHP版本在这方面不报错,那么势必需要花费开销来进行一系列的处理),新版本的PHP在开启强校验之后在遇到不规范的情况下则直接报错,不再往下执行

PHP7引入了两个合适类型:标量类型和返回值类型。我在这不会解释它们的不同以及如何去使用它们。PHP意见征求稿会比我做得更好:

*https://wiki.php.net/rfc/scalar_type_hints_v5

*https://wiki.php.net/rfc/return

示例:

function mySuperFunction(): 
int{    
return "hello world";

}
mySuperFunction();
这段代码没问题。类型声明指出这个方法应该返回int类型。然而,它返回字符串类型。
毋庸置疑,PHP会抛出了一个错误:

Fatal error: Uncaught TypeError: Return value of mySuperFunction()
 must be of the type integer, string returned. 
致命错误:未捕捉的类型错误:mySuper函数返回类型必须是int类型,返回了字符串。

PHP习惯弱类型。加入强类型后,打开bug之门,让开发者更轻松,不过php7还是有些问题,php8中已经修复了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

宇亲

你的鼓励将我创作最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值