>  기사  >  백엔드 개발  >  변수가 비어 있는지 여부를 감지하는 PHP의 방법은 무엇입니까?

변수가 비어 있는지 여부를 감지하는 PHP의 방법은 무엇입니까?

王林
王林앞으로
2021-02-11 10:15:243240검색

변수가 비어 있는지 여부를 감지하는 PHP의 방법은 무엇입니까?

PHP에는 변수가 비어 있는지 여부를 감지하는 5가지 방법이 있는데, 이 5가지 방법의 차이점은 무엇인가요? 아래에서 함께 살펴보겠습니다.

1. isset 함수: 변수가 초기화되었는지 확인

참고: 변수가 비어 있는지 확인하지 않지만 배열의 요소가 정의되었는지 확인하는 데 사용할 수 있습니다.

참고: isset을 사용하여 배열 요소가 초기화되었는지 확인하는 경우 array_key_exists보다 약 4배 더 효율적입니다.

<?php
    //$a = &#39;&#39;;
    //$a = false;
    $a[&#39;c&#39;] = &#39;&#39;;
    if (!isset($a)) echo &#39;$a 未被初始化&#39; . "<br/>";
    if (!isset($b)) echo &#39;$b 未被初始化&#39; . "<br/>";
    if (isset($a[&#39;c&#39;])) echo &#39;$a 已经被初始化&#39; . "<br/>";
//结果
// $b 未被初始化
// $a 已经被初始化

2.Empty() 함수: 변수가 "비어 있는지" 감지합니다.

설명: 초기화되지 않은 변수, 값 0 또는 false 또는 빈 문자열 "" 또는 null 변수, 빈 배열, 속성 없음 개체, 빈(변수) == 사실입니다.

참고 1: 초기화되지 않은 변수는 비어 있음으로 인해 "비어 있음"으로 감지될 수도 있습니다.

참고 2: 비어 있으면 명령문이 아닌 변수만 감지할 수 있습니다.

<?php
$a = 0;
$b = &#39;&#39;;
$c = array();
if (empty($a)) echo &#39;$a 为空&#39; . "<br/>";
if (empty($b)) echo &#39;$b 为空&#39; . "<br/>";
if (empty($c)) echo &#39;$c 为空&#39; . "<br/>";
if (empty($d)) echo &#39;$d 为空&#39; . "<br/>";
//结果
// $a 为空
// $b 为空
// $c 为空
// $d 为空
var_dump(empty(null));
var_dump(empty(0));
var_dump(empty(&#39;&#39;));
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 &#39;$a 为空&#39; . "";
if ($b == null) echo &#39;$b 为空&#39; . "";
if ($c == null) echo &#39;$c 为空&#39; . "";

// 显示结果为
// $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 &#39;$a 为NULL&#39; . "";
if (is_null($b)) echo &#39;$b 为NULL&#39; . "";
if (is_null($c)) echo &#39;$c 为NULL&#39; . "";

// 显示结果为
// $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 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 csdn.net에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제