empty与is_null函数的使用问题
时间:2011-09-06
来源:互联网
is_null检测变量是否为空
但看到很多人判断某变量不为空的写法都是:
if(!empty($var) and !is_null($var)){....}
empty也能检测NULL,为什么还要配合使用is_null函数来检测呢??
作者: net920 发布时间: 2011-09-06
Good, look below the demonstration
net920 发表于 2011-9-6 09:57
- var_dump(empty($_GET['do']));
- var_dump(is_null($_GET['do']));
a.php?do
作者: imint0 发布时间: 2011-09-06
作者: skiden 发布时间: 2011-09-06
作者: 北极猫 发布时间: 2011-09-06
这个大家都知道,include和require性质不同。可是现在很多人就是使用了empty又使用is_null ,是不是有点多余??empty已经可以检测null了,为什么还要结合使用is_null来检测呢。如果你要这样问我,那我就想不明白,为什么没人这样写:?
include 'aa.php';
require 'aa.php';
作者: net920 发布时间: 2011-09-06
empty也可以检测空字符串呀,为什么你还要加上 $var!='' 呢??
作者: net920 发布时间: 2011-09-06
只有判断变量是否是null时才会使用is_null,所以这个函数使用的相当少
作者: phpin 发布时间: 2011-09-06
还是看哥的.
- $a = null; // true
- $b = 0; // false
- $c = ''; // false
- unset($c); // true
-
- var_export(is_null($c));
作者: spser 发布时间: 2011-09-06
Good, look below the demonstration
- <?php
- $var1='';
- $var2=NULL;
- var_dump(empty($var1));
- var_dump(empty($var2));
- var_dump(is_null($var1));
- var_dump(is_null($var2))
- ?>
作者: net920 发布时间: 2011-09-06
- var_dump(empty($_GET['do']));
- var_dump(is_null($_GET['do']));
假如我们判断的对象不是GET传值呢?
作者: net920 发布时间: 2011-09-06
看谁这么写了?
作者: aCat 发布时间: 2011-09-06
真得很多人,我们公司其它人都这样写。。。

作者: net920 发布时间: 2011-09-06
真得很多人,我们公司其它人都这样写。。。
net920 发表于 2011-9-6 10:04
就你们公司吧。。。我咋没见过有人这么写。
作者: aCat 发布时间: 2011-09-06
所以我很纠结呀,干嘛多此一举。但这两个函数对于GET传参还是有区别的。 若GET传参没有定义指,那么empty返回TRUE,is_null返回FALSE
作者: net920 发布时间: 2011-09-06
所以我很纠结呀,干嘛多此一举。但这两个函数对于GET传参还是有区别的。 若GET传参没有 ...
net920 发表于 2011-9-6 10:07
你不问当事人,跑论坛来问了,真是。。。
作者: aCat 发布时间: 2011-09-06
他们回复我说,网上都这样写。。。你叫我怎么搞。
作者: net920 发布时间: 2011-09-06
如果是不确定的情况下,可以使用($var != '')这种表达式检查变量的内容是否为空更为稳妥.然而这种方法并不能判断空数组
NULL值的变量相当于没有声明的变量,可以用isset() 或者 is_null() 来判断.
作者: 北极猫 发布时间: 2011-09-06
他们回复我说,网上都这样写。。。你叫我怎么搞。
net920 发表于 2011-9-6 10:11
他们算个鸟蛋, 这帮北大青鸟出来的混混.
让他们都给我闭嘴, 用代码说话.
作者: 冯.于安 发布时间: 2011-09-06
呵呵,莫发脾气。这PHP怪问题是很多的。每个人的写法不同,当然有很多误导。

作者: net920 发布时间: 2011-09-06
作者: 北极猫 发布时间: 2011-09-06
嗯,谁把他惹毛了。
作者: net920 发布时间: 2011-09-06
作者: piresion 发布时间: 2011-09-06
PHPMYADMIN源码中就有这种写法:
if (empty($vrow[$field]) && is_null($vrow[$field])) {
$vrow[$field] = date('Y-m-d H:i:s', time());
}
作者: net920 发布时间: 2011-09-06
嗯,谁把他惹毛了。
作者: net920 发布时间: 2011-09-06
作者: piresion 发布时间: 2011-09-06
PHPMYADMIN源码中就有这种写法:
if (empty($vrow[$field]) && is_null($vrow[$field])) {
$vrow[$field] = date('Y-m-d H:i:s', time());
}
作者: net920 发布时间: 2011-09-06
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28