> php教程 > php手册 > 본문

php isset() vs array_key_exists() 我该用哪个

WBOY
풀어 주다: 2016-06-06 20:12:09
원래의
1878명이 탐색했습니다.

从上一篇文章我们可以看到isset()是要比array_key_exists()快的,有时甚至可以快十倍. 那么我们就应该使用isset(),是吗? 不,等等,有个非常特殊的情况,这种情况下isset()的返回会影响我们的判断. 参考php手册里面的isset()说明http://www.php.net/manual/zh/fu

从上一篇文章我们可以看到isset()是要比array_key_exists()快的,有时甚至可以快十倍.

那么我们就应该使用isset(),是吗?

不,等等,有个非常特殊的情况,这种情况下isset()的返回会影响我们的判断.

参考php手册里面的isset()说明http://www.php.net/manual/zh/function.isset.php

“检测变量是否设置,并且不是 NULL。”

是的,当元素值为null的时候,isset()同样会返回flase.

难道我们就要这样启用isset()了吗?

不,有个补救的发放

<?php if (isset($Arr['MyElement']) || array_key_exists('MyElement', $Arr)) {
}
로그인 후 복사

看,我们用 ‘||’运算符精巧的跳过了这一问题

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 추천
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿