PHP中检查isset()和!empty()函数的必要性

在本篇文章里小编给大家总结的是关于PHP中同时检查isset()和!empty()函数的必要性原因,有需要的朋友们学习下。

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

语法:bool isset( $var, mixed )

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

例:

  1. <?php
  2. $num = '0';
  3. if( isset( $num ) ) {
  4. print_r(" $num is set with isset function <br>");
  5. }
  6. // 声明一个空数组
  7. $array = array();
  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. <?php
  2. $temp = 0;
  3. if (emptyempty($temp)) {
  4. echo $temp . ' is considered empty';
  5. }
  6. echo "\n";
  7. $new = 1;
  8. if (!emptyempty($new)) {
  9. echo $new . ' is considered set';
  10. }
  11. ?>

输出:

0 is considered empty

1 is considered set

检查两个函数的原因:

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

例:

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

输出:

0 is set with isset function

1 is set with !empty function