프로그램 개발 중에 변수가 비어 있는지 판단해야 할 때 isset(),empty(), is_null()이 항상 혼동되는 경우가 있습니다. 차이점을 소개하겠습니다
1. isset, 변수가 초기화되었는지 확인
isset(), 변수가 설정되었는지 확인합니다. 변수가 비어 있는지 확인하지 않으며 배열의 요소가 정의되었는지 확인하는 데 사용할 수 있습니다.
코드 설명 :
<?php $a = ''; $a['c'] = ''; if (!isset($a)) echo '$a 未被初始化' . ""; if (!isset($b)) echo '$b 未被初始化' . ""; if (isset($a['c'])) echo '$a 已经被初始化' . ""; // 显示结果为 // $b 未被初始化 // $a 已经被初始化 ?>
2. 비어 있음, 변수가 "비어 있는지"
empty(), 초기화되지 않은 변수, 값이 0 또는 false인 변수 또는 빈 문자열 "" 또는 null, 비어 있는지 감지 배열 또는 속성 없음 객체는 비어 있는 것으로 판단됩니다()==true
참고 1: 초기화되지 않은 변수는 비어 있음에 의해 "비어 있음"으로 감지될 수도 있습니다
참고 2: 비어 있으면 명령문이 아닌 변수만 감지할 수 있습니다
코드 설명 :
<?php $a = 0; $b = ''; $c = array(); if (empty($a)) echo '$a 为空' . ""; if (empty($b)) echo '$b 为空' . ""; if (empty($c)) echo '$c 为空' . ""; if (empty($d)) echo '$d 为空' . ""; ?>
3.$a == null, 변수가 "비어 있는지" 확인
참고: 값이 0 또는 false인 변수 및 빈 배열 또는 빈 문자열 "" 또는 null은 null로 판단됩니다
참고: 비어 있음과의 명백한 차이점은 $a 변수가 초기화되지 않으면 $a == null이 오류를 보고한다는 것입니다.
코드 설명:
<?php $a = 0; $b = array(); if ($a == null) echo '$a 为空' . ""; if ($b == null) echo '$b 为空' . ""; if ($c == null) echo '$b 为空' . ""; // 显示结果为 // $a 为空 // $b 为空 // Undefined variable: c ?>
4.is_null, 변수가 "null"인지 감지
is_null(), 변수에 "null" 값이 할당되면 감지 결과는 true입니다
참고 1: null은 대소문자를 구분하지 않음: $a = null; $a = NULL은 차이가 없습니다
참고 2: 변수 값이 "null"인 경우에만 감지 결과는 true, 0, 빈 문자열, false 및 빈 배열입니다. 모두 false로 감지됩니다
참고 3: 변수가 초기화되지 않으면 오류도 보고됩니다.
코드 설명:
<?php $a = null; $b = false; if (is_null($a)) echo '$a 为NULL' . ""; if (is_null($b)) echo '$b 为NULL' . ""; if (is_null($c)) echo '$c 为NULL' . ""; // 显示结果为 // $a 为NULL // Undefined variable: c ?>
5. $a === null, 변수가 "null"인지 감지하고 변수 유형도 "null"이어야 합니다
지침: 변수에 "null" 값이 할당되고 변수 유형도 "null"인 경우 검색 결과는 true입니다
참고 1: is_null과 동일하면 "null"로 판단됩니다.
참고 2: 변수 초기화되지 않으면 프로그램도 오류를 보고합니다.
요약:
PHP에서는 "NULL" 및 "empty" 두 가지 개념이다.
isset은 주로 변수가 초기화되었는지 여부를 확인하는 데 사용됩니다
empty. "false", "empty", "0", "NULL" 및 "uninitialized" 값을 갖는 변수는 다음과 같이 판단할 수 있습니다. TRUE
is_null 만 "NULL" 값을 갖는 변수는 TRUE
$a == null "false", "empty", "0", "NULL" 값을 갖는 변수는 모두 판정 to be TRUE
$a === null 값이 "NULL"인 변수만 TRUE로 판단합니다
그래서 변수가 실제로 "NULL"인지 판단할 때 "false"의 간섭을 피하기 위해 is_null을 주로 사용합니다. , "0" 및 기타 값.
위 내용은 PHP에서 변수가 비어 있는지 확인하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!