PHP empty(),isset(),is_null()的实例测试。
 
有关 PHP编程 的 empty(),isset() 还有 is_null() 这三个函数的用法讨论得已经很多了,而且很多资料也未必能说得很清楚。这里再重复一次,但不是从概念去说,直接用程序例子来说话,应该记忆会比较深刻些。
测试的类型如下:
<?php
 $a;
 $b = false;
 $c = '';
 $d = 0;
 $e = null;
 $f = array();
?>
empty()
首先是empty的var_dump输出:
<?php
 var_dump(empty($a));
 var_dump(empty($b));
 var_dump(empty($c));
 var_dump(empty($d));
 var_dump(empty($e));
 var_dump(empty($f));
 ?>
程序输出为:
 bool(true)
 bool(true)
 bool(true)
 bool(true)
 bool(true)
 bool(true)
从代码中可以看出,只要数据类型是否为空或假,empty()就输出true。
isset()
再看看isset的输出:
 var_dump(isset($a));
 var_dump(isset($b));
 var_dump(isset($c));
 var_dump(isset($d));
 var_dump(isset($e));
 var_dump(isset($f));  // 输出// www.jbxue.com
 bool(false)
 bool(true)
 bool(true)
 bool(true)
 bool(false)
 bool(true)
可以看出isset()只能用来判断是否为NULL和未定义。
is_null()
最后是is_null的输出:
 
 var_dump(is_null($a));
var_dump(is_null($b));
 var_dump(is_null($c));
 var_dump(is_null($d));
 var_dump(is_null($e));
 var_dump(is_null($f));  // 输出
// www.jbxue.com
 bool(true)
 bool(false)
 bool(false)
 bool(false)
 bool(true)
 bool(false)
is_null 字面意思了。
由此可见 empty() 可以用来判定所有的数据类型是否为空或假,而 is_null 与 isset 基本一样,只能用来判断是否为NULL和未定义。

深入PHP empty(),isset(),is_null()的更多相关文章

  1. php empty,isset,is_null比较(差异与异同)

    php empty,isset,is_null比较(差异与异同)  http://www.cnblogs.com/chengmo/archive/2010/10/18/1854258.html

  2. empty,isset,is_null比较(差异与异同)

    做php开发时候,想必在使用:empty,isset,is_null  这几个函数时候,遇到一些问题.甚至给自己的程序带来一些安全隐患的bug.很多时候,对于isset,empty都认为差不多.因此开 ...

  3. php empty,isset,is_null判断比较(差异与异同)

    php empty,isset,is_null判断比较(差异与异同) 作者: 字体:[增加 减小] 类型:转载 做php开发时候,想必在使用:empty,isset,is_null 这几个函数时候,遇 ...

  4. php empty isset is_null

    总是忘记这些变量的区别,参考下http://www.jb51.net/article/38020.htm,记录下 设置几个变量 <?php $a; $b = false; $c = ''; $d ...

  5. php----浅谈一下empty isset is_null的用处

    } }    {      }  {       } } }    {      }  {       } is_null():判断变量是否为null if ($a){} 那这个未声明变量会报noti ...

  6. PHP中的逻辑判断函数empty() isset() is_null() ==NULL ===NULL

    1.empty() header("Content-type: text/html; charset=utf-8"); if(!empty($data)){ //empty() 未 ...

  7. php部分---include()与require()的区别、empty()与isset is_null的区别与用法详解

    include()与require()的用途是完全一样的,不一定非得哪个放在最前面哪个放在中间.他们最根本的区别在于错误处理的方式不一样. 1.处理错误的方式: require()一个文件存在错误的话 ...

  8. is_null, empty, isset, unset对比

    is_null, empty, isset, unset 我们先来看看这4个函数的描述 isset 判断变量是否已存在(配置)unset 把变量删除(释放)掉empty 判断变量是否为空is_null ...

  9. PHP判断变量是否存在及函数isset() 、empty()与is_null的区别

    一.举例说明 A.如何判断一个变量是否定义? <?php // 假设不存在$test 变量 if (isset($test)) { echo '$test 已经set', '<br/> ...

随机推荐

  1. POJ 2157 Evacuation Plan [最小费用最大流][消圈算法]

    ---恢复内容开始--- 题意略. 这题在poj直接求最小费用会超时,但是题意也没说要求最优解. 根据线圈定理,如果一个跑完最费用流的残余网络中存在负权环,那么顺着这个负权环跑流量为1那么会得到更小的 ...

  2. Intent Receiver

    使用Intent Receiver让自己的应用对一个外部事件做出响应,比如当电话呼入时,或者当数据网络可用时,或者时间到晚上了.Intent Receiver不能显示用户界面,它只能通过Notific ...

  3. Hibernate三种状态的区分,以及save,update,saveOrUpdate,merge等的使用 引自http://www.blogjava.net/TiGERTiAN/archive/2008/10/25/236519.html

    Hibernate的对象有3种状态,分别为:瞬时态(Transient). 持久态(Persistent).脱管态(Detached).处于持久态的对象也称为PO(Persistence Object ...

  4. 008 The Generics In JAVA

    泛型是JAVA的核心特型之一,我们先看一个例子: 没有使用泛型前,如下: import java.util.ArrayList; import java.util.List; public class ...

  5. CCJ PRML Study Note - Chapter 1.6 : Information Theory

    Chapter 1.6 : Information Theory     Chapter 1.6 : Information Theory Christopher M. Bishop, PRML, C ...

  6. Drupal8开发教程:模块开发——创建新页面

    之前我们已经通过<Drupal8开发教程:认识.info.yml文件>对模块的YAML文件有了了解,今天我们来看如何通过模块开发的方式添加一个新的页面. 在 Drupal 7 中,通过模块 ...

  7. [翻译]AlphaGO留给我们的东西

    来源:http://headlines.yahoo.co.jp/hl?a=20160317-00000049-cnippou-krhttp://headlines.yahoo.co.jp/hl?a=2 ...

  8. 用Asroute解决复杂状态切换问题

    项目地址:https://github.com/boycy815/asroute 首先明确几个概念 状态: 很多情况下,一个复杂的UI组件可能会有很多种不同的“状态”,不同的“状态”下组件本身对外界会 ...

  9. 【练习】显示MYSQL客户机选项

    [oracle@enmo ~]$ mysql --help mysql Ver , for Linux (x86_64) using EditLine wrapper Copyright (c) , ...

  10. Web 项目 中读取专用配置文件

    在 web 开发中,有时我们要为 业务逻辑处理 配置专用的 配置文件,也就是 xml 文件,这样可以极大的方便维护工作,但是读取 专用的配置文件还需要自己写一个方法,在这里,我封装了一个公用 的方法: ...