PHP에서 isset()과 !empty() 함수의 유사점과 차이점

autoload
풀어 주다: 2023-04-09 20:34:02
원래의
2818명이 탐색했습니다.

 isset()! empty() 함수는 유사하며 둘 다 동일한 결과를 반환합니다. 하지만 유일한 차이점은! empty() 함수는 변수가 존재하지 않을 때 경고나 전자 알림을 생성하지 않습니다. 두 기능 중 하나만 사용해도 충분합니다. 두 가지 기능을 프로그램으로 병합하면 시간 경과가 발생하고 불필요한 메모리 사용량이 발생합니다. isset()!empty()函数类似,两者都将返回相同的结果。但唯一的区别是!当变量不存在时,empty()函数不会生成任何警告或电子通知。它足以使用任何一个功能。通过将两个功能合并到程序中会导致时间流逝和不必要的内存使用。

1.isset()

isset ( mixed $var , mixed $... = ? ) : bool
로그인 후 복사
  • var:要检查的变量。

  • 返回值:如果 var 存在并且值不是 null 则返回 true,否则返回 false。

PS:如果已经使用 unset() 释放了一个变量之后,它将不再是 isset()。若使用 isset() 测试一个被设置成 null 的变量,将返回 false。同时要注意的是 null 字符("")并不等同于 PHP 的 null 常量。如果一次传入多个参数,那么 isset() 只有在全部参数都以被设置时返回 true 计算过程从左至右,中途遇到没有设置的变量时就会立即停止。

<?php 
  
  $num = &#39;0&#39;; 
  if( isset( $num ) ) 
  { 
      print_r(" $num is set with isset  ");
   } 
   echo "<br>";
// 声明一个空数组 $array = array(); 
  echo isset($array[&#39;geeks&#39;]) ? &#39;array is set.&#39; : &#39;array is not set.&#39;; 
?>
로그인 후 복사

输出:

0 is set with isset functionarray is not set.
array is not set.
로그인 후 복사


2.empty()

empty ( mixed $var ) : bool
로그인 후 복사
  • var:待检查的变量

  • 返回值:当var存在,并且是一个非空非零的值时返回 false 否则返回 true.

<?php 
  
  
$temp = 0; 
  if (empty($temp)) { 
  echo $temp . &#39; is considered empty&#39;; 
  } 
  echo "\n"; 
  $new = 1; 
  if (!empty($new)) { 
  echo $new . &#39; is considered set&#39;;
   } 
  ?>
로그인 후 복사

输出

0 is considered empty
1 is considered set
로그인 후 복사

以下内容会被判定为空:

  • "" (空字符串)

  • 0 (作为整数的0)

  • 0.0 (作为浮点数的0)

  • "0" (作为字符串的0)

  • null

  • fals

  • earray() (一个空数组)

  • $var; (一个声明了,但是没有值的变量)

3.二者异同

isset()和!empty()函数类似,两者都将返回相同的结果。但唯一的区别是!当变量不存在时,empty()

1.isset()

<?php 
 
$num = &#39;0&#39;; 
  if( isset ( $num ) ) { 
  print_r( $num . " is set with isset function"); 
  } 
  echo "\n"; 
  $num = 1; 
  if( !empty ( $num ) ) { 
  print_r($num . " is set with !empty function");
   }
 ?>
로그인 후 복사
PS: span>unset()을 사용하여 변수가 해제된 경우 해당 변수는 더 이상 isset()이 아닙니다. isset()을 사용하여 null로 설정된 변수를 테스트하면 false가 반환됩니다. 또한 null 문자("

위 내용은 PHP에서 isset()과 !empty() 함수의 유사점과 차이점의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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