zoukankan      html  css  js  c++  java
  • PHP 判断数组是否为空的5大方法

    1. isset功能:判断变量是否被初始化

    说明:它并不会判断变量是否为空,并且可以用来判断数组中元素是否被定义过

    注意:当使用isset来判断数组元素是否被初始化过时,它的效率比array_key_exists高4倍左右

    01.<?php
    02.$a = '';
    03.$a['c'] = '';
    04.if (!isset($a)) echo '$a 未被初始化' . "";
    05.if (!isset($b)) echo '$b 未被初始化' . "";
    06.if (isset($a['c'])) echo '$a 已经被初始化' . "";
    07.// 显示结果为
    08.// $b 未被初始化
    09.// $a 已经被初始化

    2. empty功能:检测变量是否为”空”

    说明:任何一个未初始化的变量、值为 0 或 false 或 空字符串”” 或 null的变量、空数组、没有任何属性的对象,都将判断为empty==true

    注意1:未初始化的变量也能被empty检测为”空”

    注意2:empty只能检测变量,而不能检测语句

    1.<?php
    2.$a = 0;
    3.$b = '';
    4.$c = array();
    5.if (emptyempty($a)) echo '$a 为空' . "";
    6.if (emptyempty($b)) echo '$b 为空' . "";
    7.if (emptyempty($c)) echo '$c 为空' . "";
    8.if (emptyempty($d)) echo '$d 为空' . "";

    3. var == null功能:判断变量是否为”空”

    说明:值为 0 或 false 或 空字符串”” 或 null的变量、空数组、都将判断为 null

    注意:与empty的显著不同就是:变量未初始化时 var == null 将会报错。

    01.<?php
    02.$a = 0;
    03.$b = array();
    04.if ($a == null) echo '$a 为空' . "";
    05.if ($b == null) echo '$b 为空' . "";
    06.if ($c == null) echo '$b 为空' . "";
    07.// 显示结果为
    08.// $a 为空
    09.// $b 为空
    10.// Undefined variable: c

    4. is_null功能:检测变量是否为”null”

    说明:当变量被赋值为”null”时,检测结果为true

    注意1:null不区分大小写:$a = null; $a = NULL 没有任何区别

    注意2:仅在变量的值为”null”时,检测结果才为true,0、空字符串、false、空数组都检测为false

    注意3:变量未初始化时,程序将会报错

    01.<?php
    02.$a = null;
    03.$b = false;
    04.if (is_null($a)) echo '$a 为NULL' . "";
    05.if (is_null($b)) echo '$b 为NULL' . "";
    06.if (is_null($c)) echo '$c 为NULL' . "";
    07.// 显示结果为
    08.// $a 为NULL
    09.// Undefined variable: c

    5. var === null功能:检测变量是否为”null”,同时变量的类型也必须是”null”

    说明:当变量被赋值为”null”时,同时变量的类型也是”null”时,检测结果为true

    注意1:在判断为”null”上,全等于和is_null的作用相同

    注意2:变量未初始化时,程序将会报错

    总结:

    PHP中,”NULL” 和 “空” 是2个概念。

    isset 主要用来判断变量是否被初始化过

    empty 可以将值为 “假”、”空”、”0″、”NULL”、”未初始化” 的变量都判断为TRUE

    is_null 仅把值为 “NULL” 的变量判断为TRUE

    var == null 把值为 “假”、”空”、”0″、”NULL” 的变量都判断为TRUE

    var === null 仅把值为 “NULL” 的变量判断为TRUE

    注意:在判断一个变量是否真正为”NULL”时,大多使用 is_null,从而避免”false”、”0″等值的干扰。

  • 相关阅读:
    10 种保护 Spring Boot 应用的绝佳方法
    Redis 如何分析慢查询操作?
    Spring Boot 主类及目录结构介绍
    Redis 再牛逼,也得设置密码!!
    Spring Data Redis 详解及实战一文搞定
    Spring Boot Redis Cluster 实战干货
    超详细的 Redis Cluster 官方集群搭建指南
    Redis Linux 安装运行实战全记录
    hdu 4790 Just Random (思路+分类计算+数学)
    poj 1328 Radar Installation(贪心)
  • 原文地址:https://www.cnblogs.com/zikai/p/5036030.html
Copyright © 2011-2022 走看看