在PHP 8.X中处理未定义数组键的最佳方式

在PHP 8.X中处理未定义数组键的最佳方式

爱游把PHP升级到了PHP8.1,modown是全面支持了php8.x的,但是爱游有些地方做了二开,导致不能很好的兼容,对于我这样不懂php的升级了版本就一大堆得报错。 栗子如下: public function myFunction($options = []){ if($run = $options['run']){ } } 如果...

爱游把PHP升级到了PHP8.1,modown是全面支持了php8.x的,但是爱游有些地方做了二开,导致不能很好的兼容,对于我这样不懂php的升级了版本就一大堆得报错。

栗子如下:

public function myFunction($options = []){
 if($run = $options['run']){ 
 }
}

如果要是我来改,$options被初始化为一个数组,如果定义了键‘run’,我就可以随时使用它的值。现在建议我用这段简单的代码处理的是.

public function myFunction($options = false){
 if(isset($options['run']){
  $run = $options['run'];
 }
}

这样就不会报错了,但是。。。

升级php不就是为了运行得更快吗?现在反而多了一行代码。

经过在网上搜索发现有更简单的办法:

可以通过在表达式前追加@来取消错误。如果值不存在,$run将为NULL:

public function myFunction($options = []){
 if($run = @$options['run']){ 
 }
}

完美。。。

版权申明:
版权声明

①:本站文章均为原创,除非另有说明,否则本站内容依据CC BY-NC-SA 4.0许可证进行授权,转载请附上出处链接,谢谢。
②:本站提供的所有资源均为网上搜集,不保证能100%完整,如有涉及或侵害到您的版权请立即通知我们。
③:本站所有下载文件,仅用作学习研究使用,请下载后24小时内删除,支持正版,勿用作商业用途。
④:本站保证所提供资源的完整性,但不含授权许可、帮助文档、XML文件、PSD、后续升级等。
⑤:使用该资源需要用户有一定代码基础知识!由本站提供的资源对您的网站或计算机造成严重后果的本站概不负责。
⑥:本站资源售价只是赞助,收取费用仅维持本站的日常运营所需。
⑦:如果喜欢本站资源,欢迎捐助本站开通会员享受优惠折扣,谢谢支持!
⑧:如果网盘地址失效,请在相应资源页面下留言,我们会尽快修复下载地址。

0

评论0

请先

会员低至49元,开通享海量VIP资源免费下载 自助开通
显示验证码
没有账号?注册  忘记密码?