PHP에는 변수가 비어 있는지 여부를 감지하는 5가지 방법이 있는데, 이 5가지 방법의 차이점은 무엇인가요? 아래에서 함께 살펴보겠습니다.
1. isset 함수: 변수가 초기화되었는지 확인
참고: 변수가 비어 있는지 확인하지 않지만 배열의 요소가 정의되었는지 확인하는 데 사용할 수 있습니다.
참고: isset을 사용하여 배열 요소가 초기화되었는지 확인하는 경우 array_key_exists보다 약 4배 더 효율적입니다.
<?php //$a = ''; //$a = false; $a['c'] = ''; if (!isset($a)) echo '$a 未被初始化' . "<br/>"; if (!isset($b)) echo '$b 未被初始化' . "<br/>"; if (isset($a['c'])) echo '$a 已经被初始化' . "<br/>"; //结果 // $b 未被初始化 // $a 已经被初始化
2.Empty() 함수: 변수가 "비어 있는지" 감지합니다.
설명: 초기화되지 않은 변수, 값 0 또는 false 또는 빈 문자열 "" 또는 null 변수, 빈 배열, 속성 없음 개체, 빈(변수) == 사실입니다.
참고 1: 초기화되지 않은 변수는 비어 있음으로 인해 "비어 있음"으로 감지될 수도 있습니다.
참고 2: 비어 있으면 명령문이 아닌 변수만 감지할 수 있습니다.
<?php $a = 0; $b = ''; $c = array(); if (empty($a)) echo '$a 为空' . "<br/>"; if (empty($b)) echo '$b 为空' . "<br/>"; if (empty($c)) echo '$c 为空' . "<br/>"; if (empty($d)) echo '$d 为空' . "<br/>"; //结果 // $a 为空 // $b 为空 // $c 为空 // $d 为空 var_dump(empty(null)); var_dump(empty(0)); var_dump(empty('')); var_dump(empty([])); //结果 // bool(true) // bool(true) // bool(true) // bool(true)
3.var == null 함수: 변수가 "null"인지 확인
설명: 값이 0 또는 false이거나 빈 문자열 "" 또는 null인 변수 및 빈 배열은 null로 판단됩니다.
(동영상 공유 학습: php 동영상 튜토리얼)
참고: 비어 있음과의 중요한 차이점은 변수가 초기화되지 않은 경우 var == null이 오류를 보고한다는 것입니다.
<?php $a = 0; $b = array(); if ($a == null) echo '$a 为空' . ""; if ($b == null) echo '$b 为空' . ""; if ($c == null) echo '$c 为空' . ""; // 显示结果为 // $a 为空 // $b 为空 // Undefined variable: c
4.is_null 함수: 변수가 "null"인지 감지합니다.
설명: 변수에 "null" 값이 할당되면 감지 결과가 true입니다.
참고 1: null은 대소문자를 구분하지 않습니다. a=null;a=null;a = NULL은 아무런 차이가 없습니다.
참고 2: 변수 값이 "null"인 경우에만 감지 결과가 true이고 빈 문자열, 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. var === null 함수: 변수가 "null"인지 확인하고 변수 유형도 "null"이어야 합니다.
설명: 변수에 "null" 값이 할당되면 변수 유형도 "null"이어야 하며, 검색 결과는 true입니다.
*참고 1: "null"로 판단할 때 모든 같음은 is_null과 동일한 효과를 갖습니다.
*참고 2: 변수가 초기화되지 않으면 프로그램에서 오류를 보고합니다.
요약:
PHP에서는 "NULL"과 "empty"가 두 가지 개념입니다.
isset은 주로 변수가 초기화되었는지 확인하는 데 사용됩니다.
empty는 "false", "empty", "0", "NULL" 및 "uninitialized" 값을 가진 변수를 TRUE로 판단할 수 있습니다.
is_null은 "NULL" 값이 있는 변수만 TRUE로 평가합니다.
var == null "false", "empty", "0", "NULL" 값을 갖는 변수를 TRUE로 판단합니다.
var === null 값이 "NULL"인 변수만 TRUE로 판단됩니다.
참고: 변수가 실제로 "NULL"인지 판단할 때 is_null은 대부분 "false", "0" 및 기타 값의 간섭을 피하기 위해 사용됩니다.
관련 권장 사항: php 튜토리얼
위 내용은 변수가 비어 있는지 여부를 감지하는 PHP의 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!