在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
今天使用isset()函数检查一个数组中某个键值是否存在,发现一个问题。 $info['page'] = null; if (isset($info['page'])) { // 存在 } else { // 不存在 } 代码执行的结果居然是不存在。后来换成array_key_exists()就可以了。
因而,对PHP的isset()使用方法有了一些怀疑,下面是一段测试代码: $info['page'] = null; c('null'); $info['page'] = 0; c('zero'); $info['page'] = false; c('false'); function c($value) { global $info; $key = 'page'; $result = $value . ':'; $result .= (true === isset($info[$key]) ? '1' : '0'); $result .= (true === array_key_exists($key, $info) ? '1' : '0'); $result .= (true === empty($info[$key]) ? '1' : '0'); echo $result . "\n"; } exit; 执行结果: null:011 zero:111 false:111
总结:检查数组是否存在某个$key,使用array_key_exists($key, $array);检查对象是否存在某个$key,使用isset($object->$key)。 |
2022-08-17
2022-11-06
2022-08-17
2022-07-18
2022-07-18
请发表评论