zoukankan      html  css  js  c++  java
  • PHP中isset和empty的区别(最后总结)

    PHP的isset()函数 一般用来检测变量是否设置
    格式:bool isset ( mixed var [, mixed var [, ...]] )

    功能:检测变量是否设置

    返回值:

    若变量不存在则返回 FALSE
    若变量存在且其值为NULL,也返回 FALSE
    若变量存在且值不为NULL,则返回 TURE

    更多说明:
    使用 unset() 释放变量之后,它将不再是 isset()。
    PHP函数isset()只能用于变量,传递任何其它参数都将造成解析错误。
    检测常量是否已设置可使用 defined() 函数。

    PHP的empty()函数 判断值为否为空

    格式:bool empty ( mixed var )

    功能:检查一个变量是否为空

    返回值:

    若变量不存在则返回 TRUE
    若变量存在且其值为""、0、"0"、NULL、、FALSE、array()、var $var; 以及没有任何属性的对象,则返回 TURE
    若变量存在且值不为""、0、"0"、NULL、、FALSE、array()、var $var; 以及没有任何属性的对象,则返回 FALSE

    更多说明:
    empty()的返回值=!(boolean) var,但不会因为变量未定义而产生警告信息。参见转换为布尔值获取更多信息。
    empty() 只能用于变量,传递任何其它参数都将造成Paser error而终止运行。
    检测常量是否已设置可使用 defined() 函数。
    例子: empty() 与 isset() 的一个简单比较

    手册中对empty()的解释如下:

    描述bool empty( mixed var )
    如果 var 是非空或非零的值,则 empty() 返回 FALSE。换句话说,”"、0、”0″、NULL、FALSE、array()、var $var; 以及没有任何属性的对象都将被认为是空的,如果 var 为空,则返回 TRUE。
    手册中对isset()的解释如下:

    isset()检测变量是否设置

    描述bool isset ( mixed var [, mixed var [, ...]] )

    如果 var 存在则返回 TRUE,否则返回 FALSE。

    如果已经使用 unset() 释放了一个变量之后,它将不再是 isset()。若使用 isset() 测试一个被设置成 NULL 的变量,将返回 FALSE。同时要注意的是一个 NULL 字节(”?”)并不等同于 PHP 的 NULL 常数。
    警告: isset() 只能用于变量,因为传递任何其它参数都将造成解析错误。若想检测常量是否已设置,可使用 defined()函数。

    总结(敲黑板):
    当要 判断一个变量是否已经声明的时候 可以使用 isset 函数
    当要 判断一个变量是否已经赋予数据且不为空 可以用 empty 函数
    当要 判断 一个变量 存在且不为空 先isset 函数 再用 empty 函数

  • 相关阅读:
    【WEB前端开发最佳实践系列】高可读的HTML
    【Web前端开发最佳实践系列】标准的HTML代码
    Web服务器配置Gzip压缩提升网站性能
    【Web前端开发最佳实践系列】前端代码推荐和建议
    【前端系列】移动前端开发之viewport的深入理解
    【Spring Boot && Spring Cloud系列】那些Spring Boot中踩过的坑
    【Spring Boot && Spring Cloud系列】Spring Boot的启动器Starter
    【Spring Boot&&Spring Cloud系列】提高数据库访问性能
    【Spring Boot&& Spring Cloud系列】单点登录SSO之OAuth2官方开发文档翻译
    【Spring Boot&& Spring Cloud系列】单点登录SSO概述
  • 原文地址:https://www.cnblogs.com/GP1014336455/p/7597269.html
Copyright © 2011-2022 走看看