为什么要在PHP中同时检查isset()和!empty()函数

isset()函数是PHP中的内置函数,它检查变量是否已设置且不为NULL。此函数还检查声明的变量,数组或数组键是否具有空值,如果是,isset()返回false,它在所有其他可能的情况下返回true。

语法:

bool isset( $var, mixed )

参数:此函数接受多个参数。这个函数的第一个参数是$ var。此参数用于存储变量的值。

例:

  1. $num = '0';
  2. if( isset( $num ) ) {
  3. print_r(" $num is set with isset function

    ");

  4. }
  5. // 声明一个空数组
  6. $array = array();
  7. //phpfensi.com
  8. echo isset($array['geeks']) ?
  9. 'array is set.' : 'array is not set.';
  10. ?>

输出:

0 is set with isset function

array is not set.

empty()函数是一种语言构造,用于确定给定变量是空还是NULL。!empty()函数是empty()函数的否定或补充。empty()函数与!isset()函数相当,而!empty()函数等于isset()函数。

例:

  1. $temp = 0;
  2. if (emptyempty($temp)) {
  3. echo $temp . ' is considered empty';
  4. }
  5. echo "\n";
  6. $new = 1;
  7. if (!emptyempty($new)) {
  8. echo $new . ' is considered set';
  9. }
  10. ?>

输出:

0 is considered empty

1 is considered set

检查两个函数的原因:

isset()和!empty()函数类似,两者都将返回相同的结果。但唯一的区别是!当变量不存在时,empty()函数不会生成任何警告或电子通知。它足以使用任何一个功能。通过将两个功能合并到程序中会导致时间流逝和不必要的内存使用。

例:

  1. $num = '0';
  2. if( isset ( $num ) ) {
  3. print_r( $num . " is set with isset function");
  4. }
  5. echo "\n";
  6. $num = 1;
  7. if( !emptyempty ( $num ) ) {
  8. print_r($num . " is set with !empty function");
  9. }

输出:

0 is set with isset function

1 is set with !empty function

本篇文章就是为什么要在PHP中同时检查isset()和!empty()函数的原因介绍,希望对需要的朋友有所帮助!