이러한 변수 판단 함수는 실제로 PHP 개발에서 꽤 많이 사용되며 언뜻 보면 모두 비슷해 보이지만 실제로는 여전히 많은 차이점이 있습니다. 그것에 대해 명확하지 않은 경우, 나 자신이 그러한 함정에 직면했다는 사실을 포함하여 뒤에 남겨진 몇 가지 잠재적인 버그가 있을 수 있습니다. 예를 들어, 프런트 엔드에서는 0의 입력을 허용했지만 If를 사용했습니다. 비어있다고 판단되면 사실일 것이고, 오류가 있는 경우 직접 보고할 것이므로 이 판단은 여기서 사용할 수 없습니다.
권장 사항: "PHP 튜토리얼"
먼저 이러한 기능의 구체적인 용도를 살펴보겠습니다 # 🎜🎜#
isset — 변수가 설정되어 있고 NULL이 아닌지 확인하세요.empty — 변수가 비어 있는지 확인하세요. 다음 항목은 비어 있는 것으로 간주됩니다.#🎜🎜 #
""(빈 문자열)一isset# 🎜 🎜# 변수가 먼저 정의되었는지, 배열의 키 값이 존재하는지 등을 확인합니다.0(0은 정수)
0.0(0은 부동 소수점 숫자)
#🎜🎜 # "0"(문자열로서의 0)NULLFALSEarray()(빈 배열)#🎜 🎜#$var; (값 없이 선언된 변수)
is_null — 변수가 NULL인지 확인
<?php $data=[""," ", 0, 0.0 ,"0", null, "null", true, false ,[]]; foreach ($data as $key => $val){ echo $key . '=>' . var_dump(isset($val)) . "\r\n"; } //以上输出只有 null返回false,其它都为真 $arr = ['name' =>'lc', 'age' => 22, 'address' =>null]; echo isset($arr['name']) . "\r\n"; //true echo isset($arr['mobile'])."\r\n"; //false echo isset($arr['address']) ."\r\n"; //false //未定义的键和值为null,返回false
$data=[""," ", 0, 0.0 ,"0", null, "null", true, false ,[]]; foreach ($data as $key => $val){ echo $key . '=>' . var_dump(empty($val)) . "\r\n"; } //以上输出 '" "',"null",true等为false,其它为true is_null $data=[""," ", 0, 0.0 ,"0", null, "null", true, false ,[]]; foreach ($data as $key => $val){ echo $key . '=>' . var_dump(is_null($val)) . "\r\n"; } //以上输出 null 为true,其它全为false
$a ?? 0; //相当于isset($a); $a ?: 0; //相当于!empty($a);
결론
isset: null이 아닌 모든 값은 true입니다.
empty. : "" , 0,0.0,"0",null,false,array(), 정의되지 않은 var는 모두 true입니다.is_null: 값은 null이고 true입니다.
# 🎜🎜##🎜 🎜#PHP 관련 지식을 더 보려면PHP中文网을 방문하세요!
위 내용은 PHP isset(), is_null,empty() 사용법 요약의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!