码迷,mamicode.com
首页 > Web开发 > 详细

PHP isset, array_key_exists配合使用, 并解决效率问题

时间:2016-12-15 14:38:23      阅读:182      评论:0      收藏:0      [点我收藏+]

标签:函数   输出   isset   bsp   解决   else   set   php   php isset   

如果有一个数组,

$arr = array(‘one‘ => null, ‘two‘ => 1, ‘three‘ => 2);

问题, 如果要判断数组中‘one‘这个键是否存在..如果单纯用 isset 判断会出现问题

if(isset($arr[‘one‘])){

  echo ‘存在‘;

}esle{

  echo ‘不存在‘;

}

 

输出 : 不存在

 

isset对于判断null这种值, 会认为没有在内存中开辟空间, 相当于销毁变量.

所以希望有效率, 并且能准确判断键是否被创建, 则应该这样写 : 

if(isset($arr[‘one‘]) || array_key_exists($arr[‘one‘])){

  echo ‘存在‘;

}else{

  echo ‘不存在‘;

}

 

这样, 左边的isset如果为true后就会直接判断为存在, 不执行array_key_exists函数, 效率得以提高.

 

PHP isset, array_key_exists配合使用, 并解决效率问题

标签:函数   输出   isset   bsp   解决   else   set   php   php isset   

原文地址:http://www.cnblogs.com/meibao/p/6182706.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!