PHP 判断数组是否为空的方法

简介: PHP 判断数组是否为空的方法

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


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


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

<?php 
$a = ''; 
$a['c'] = ''; 
if (!isset($a)) echo '$a 未被初始化' . ""; 
if (!isset($b)) echo '$b 未被初始化' . ""; 
if (isset($a['c'])) echo '$a 已经被初始化' . ""; 
// 显示结果为 
// $b 未被初始化 
// $a 已经被初始化


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


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


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


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

<?php 
$a = 0; 
$b = ''; 
$c = array(); 
if (emptyempty($a)) echo '$a 为空' . ""; 
if (emptyempty($b)) echo '$b 为空' . ""; 
if (emptyempty($c)) echo '$c 为空' . ""; 
if (emptyempty($d)) echo '$d 为空' . "";


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


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


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

<?php 
$a = 0; 
$b = array(); 
if ($a == null) echo '$a 为空' . ""; 
if ($b == null) echo '$b 为空' . ""; 
if ($c == null) echo '$b 为空' . ""; 
// 显示结果为 
// $a 为空 
// $b 为空 
// Undefined variable: c


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


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


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


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


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

<?php 
$a = null; 
$b = false; 
if (is_null($a)) echo '$a 为NULL' . ""; 
if (is_null($b)) echo '$b 为NULL' . ""; 
if (is_null($c)) echo '$c 为NULL' . ""; 
// 显示结果为 
// $a 为NULL 
// 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″等值的干扰。

目录
相关文章
|
4月前
|
PHP C++ 索引
PHP 高效之道:字符串与数组处理的实用技巧
PHP 高效之道:字符串与数组处理的实用技巧
237 83
|
1月前
|
安全 API PHP
PHP中实现CORS跨域资源共享的方法
通过这种方式,你可以在PHP应用中灵活地实现CORS,以支持跨域Web应用的需求。
172 15
|
5月前
|
JSON 数据处理 PHP
PHP数组处理技巧:高效操作数据集合
PHP数组处理技巧:高效操作数据集合
|
5月前
|
JSON 安全 大数据
PHP中的数组处理艺术:灵活高效的数据操作
PHP中的数组处理艺术:灵活高效的数据操作
|
5月前
|
大数据 数据处理 PHP
PHP中的数组过滤与映射:高效数据处理技巧
PHP中的数组过滤与映射:高效数据处理技巧
|
4月前
|
存储 JSON PHP
PHP数组键值转换的隐秘陷阱:整数还是字符串?
PHP数组键值转换的隐秘陷阱:整数还是字符串?
196 58
|
4月前
|
PHP 开发者 索引
探究PHP中常见数组操作函数
在编码实践中,合理利用这些数组操作函数可以简化编程工作,提升代码的效率和可读性。为达到最佳实践,开发者应该通过阅读官方文档来深入理解每个函数的工作原理以及如何在不同的场景下运用它们。
183 8
|
4月前
|
测试技术 PHP 开发者
PHP 数组查找:为什么 `isset()` 比 `in_array()` 快得多?
PHP 数组查找:为什么 `isset()` 比 `in_array()` 快得多?
|
存储 数据处理 PHP
深入浅出PHP编程之数组操作技巧
【10月更文挑战第30天】在PHP编程的海洋里,数组是一艘承载着数据结构的小船,掌握其操控之道,能让开发者在编码的旅程中乘风破浪。本文将带你领略数组的强大功能,从基础使用到高级应用,一步步揭开数组操作的神秘面纱。准备好你的航海装备,让我们启航吧!
124 4
|
7月前
|
Ubuntu PHP Apache
在Ubuntu系统中为apt的apache2编译PHP 7.1的方法
以上就是在Ubuntu系统中为apt的apache2编译PHP 7.1的方法。希望这个指南能帮助你成功编译PHP 7.1,并在你的Apache服务器上运行PHP应用。
189 28
下一篇
oss云网关配置