当前位置: 首页 > 面试题库 >

isset()和empty()-使用什么

蔺宇
2023-03-14
问题内容

您能否帮助我改善编码风格?:)在某些任务中,我需要检查-变量为空还是包含某些内容。为了解决此任务,我通常执行以下操作。

检查-是否设置了此变量?如果已设置-我检查-它是否为空?

<?php
    $var = '23';
    if (isset($var)&&!empty($var)){
        echo 'not empty';
    }else{
        echo 'is not set or empty';
    }
?>

我有一个问题-我应该在empty()之前使用isset()吗-有必要吗?TIA!


问题答案:

这取决于您要查找的内容,如果您只是想查看它是否为空,那么只需使用empty它即可检查它是否也已设置,是否想知道是否已设置了某些内容isset

Empty 检查是否设置了变量,是否为null,“”,0等

Isset 只是检查是否已设置,可能不是空

使用empty,以下内容被认为是空的:

  • “”(空字符串
  • 0(0为整数)
  • 0.0(0为浮点数)
  • “ 0”(0作为字符串)
  • 空值
  • array()(一个空数组)
  • var $ var; (已声明变量,但类中没有值)

来自http://php.net/manual/en/function.empty.php

正如评论中提到的,对于empty(),缺少警告也很重要

PHP手册说

empty()与(boolean)var相反,不同之处在于 未设置变量时不生成警告

关于isset

PHP手册说

如果测试已设置为NULL的变量,则isset()将返回FALSE

您的代码可以满足以下要求:

<?php
    $var = '23';
    if (!empty($var)){
        echo 'not empty';
    }else{
        echo 'is not set or empty';
    }
?>

例如:

$var = "";

if(empty($var)) // true because "" is considered empty
 {...}
if(isset($var)) //true because var is set 
 {...}

if(empty($otherVar)) //true because $otherVar is null
 {...}
if(isset($otherVar)) //false because $otherVar is not set 
 {...}


 类似资料:
  • 问题内容: 有没有之间的差异和。如果我进行双重布尔检查,这种方法是正确的还是多余的?有没有更短的方法来做同样的事情? 问题答案: 这是完全多余的。或多或少简写,并且是类似于。即做相反的事情,再加上一个额外的检查值的 真实性 。 换句话说,与相同,但是如果变量不存在,则不会发出警告。这就是该函数的重点:进行布尔比较,而不必担心设置变量。 手册说得像这样: 与的相反, 只是未设置变量时不生成警告。 您

  • 问题内容: 我不明白之间的差别和。 因为如果设置了变量,它是否等于不为空? 问题答案: ISSET 检查变量以查看是否已设置。换句话说,它检查变量是否为除NULL以外的任何值或未分配值。返回该变量是否存在并且具有非NULL的值。这意味着设置了分配了“”,0,“ 0”或FALSE的变量,因此它们是for的。 EMPTY 检查变量是否为空。空解释为:“”(一个空字符串),0(整数),0.0(浮点数),

  • 问题内容: 我有几个较旧的应用程序,它们在E_NOTICE错误级别上运行时会抛出很多“ xyz未定义”和“未定义偏移”消息,因为没有使用和明确检查变量的存在。 我正在考虑通过它们使它们与E_NOTICE兼容,因为有关丢失变量或偏移量的通知可能会节省生命,可能会获得一些较小的性能改进,并且总体而言,这是一种更清洁的方法。 但是,我不喜欢什么造成数百 和S ^确实给我的代码。它变得肿,可读性降低,而没

  • 问题内容: 我在某处读到该函数将空字符串视为,因此这不是从HTML表单验证文本输入和文本框的有效方法。 因此,您可以用来检查用户是否键入了某些内容。 函数将空字符串视为是真的吗? 那我应该在什么情况下使用呢?我应该经常检查是否有东西吗? 例如代替 使用这个 问题答案: isset vs.!empty 自由贸易协定: “ isset()检查变量的值是否包含(False,0或空字符串),但不包含NUL

  • 本文向大家介绍为什么要在PHP中同时检查isset()和!empty()函数?,包括了为什么要在PHP中同时检查isset()和!empty()函数?的使用技巧和注意事项,需要的朋友参考一下 Php提供了一些神奇的预定义函数来处理实时应用程序中的变量。在本文中,我们将通过很少的示例来研究和!empty()函数以及这两个函数的实现。 isset(): 该函数是PHP中的预定义函数,它检查变量是否在应

  • 本文向大家介绍PHP isset()及empty()用法区别详解,包括了PHP isset()及empty()用法区别详解的使用技巧和注意事项,需要的朋友参考一下 PHP isset函数作用 isset函数是检测变量是否设置。 格式:bool isset( mixed var [, mixed var [, ...]] ) 返回值: 若变量不存在则返回FALSE 若变量存在且其值为NULL,也返回