isset,empty,is_null的小知识点

<?php

/**

对于初学者很多的时候不能很好的使用isset,empty,is_null对null,false等值的返回值做出正确的判断,在这里我通过学习自己总结了一点知识点,作为以后的知识点

*/

//1.设定数据类型,举例常用到的类型

$a;

$b = false;

$c = ‘‘;

$d = 0;

$e = null;

$f = array();

//2.分别针对不同的函数进行测试以上的数据类型返回值,用var_dump()打印,print_r有区别的,项目中你就知道了!

//2.1以下上对empty()函数的打印

var_dump(empty($a));    //输出true

var_dump(empty($b));    //输出true

var_dump(empty($c));    //输出true

var_dump(empty($d));    //输出true

var_dump(empty($e));    //输出true

var_dump(empty($f));    //输出true

//分析:只要数据类型是否为空或假,empty()就输出true

//2.2对isset进行数据返回类型测试

var_dump(isset($a));    //输出false

var_dump(isset($b));    //输出true

var_dump(isset($c));    //输出true

var_dump(isset($d));    //输出true

var_dump(isset($e));    //输出false

var_dump(isset($f));    //输出true

/**分析:1.isset()只能用来判断是否为NULL和未定义,如果想检测变量是否已经定义,那么可以使用defined()函数;

2.如果要判断一个变量是否被设置(声明),使用isset

3.如果要判断一个变量赋值并且不为空,使用empty

4.如果要判断一个变量被设置并且不为空,可以先使用isset,然后使用empty

*/

//2.3对is_null返回值类型测试

var_dump(is_null($a));    //输出true,但是出现未定义,因为错误级别的原因

var_dump(is_null($b));    //输出false

var_dump(is_null($c));    //输出false

var_dump(is_null($d));    //输出false

var_dump(is_null($e));    //输出true

var_dump(is_null($f));    //输出false

/**

分析:只是用来判断是否为空和未定义,用法与iset基本一样

*/

变量                             empty             is_null             isset

$a=""                              true               false              true

$a=null                           true               true               false

var $a                             true               true               false

$a=array()                          true               false              true

$a=false                            true               false              true

$a=10                             false              false              true

$a=1                             false              false              true

$a=0                               true               false              true

$a=""                             true               false              true

$a="true"                           false              false              true

$a="false"                         true               false              true

时间: 2024-11-02 09:39:20

isset,empty,is_null的小知识点的相关文章

PHP中empty、isset和is_null的使用区别

关于PHP中empty().isset() 和 is_null() 这三个函数的区别,之前记得专门总结过,上次又被问到,网上已经很多,就用几个例子来说明: 测试用例选取: <?php $a;$b = false;$c = '';$d = 0;$e = null;$f = array(); ?> 用var_dump()分别输出如下: empty() bool(true)bool(true)bool(true)bool(true)bool(true)bool(true) isset() bool(

PHP empty(),isset()与is_null()的实例测试

有关 PHP 的 empty(),isset() 还有 is_null() 这三个函数的用法讨论得已经很多了,而且很多资料也未必能说得很清楚.这里再重复一次,但不是从概念去说,直接用程序例子来说话,应该记忆会比较深刻些.永盈会娱乐城 测试的类型如下: view source print? 01 <?php 02   03 $a; 04 $b = false; 05 $c = ''; 06 $d = 0; 07 $e = null; 08 $f = array(); 09   10 ?> emp

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输出: var_dump(empty($a)); var_dump(emp

empty(),isset()与is_null()的实例测试

有关 PHP 的 empty(),isset() 还有 is_null() 这三个函数的用法讨论得已经很多了,而且很多资料也未必能说得很清楚.这里再重复一次,但不是从概念去说,直接用程序例子来说话,应该记忆会比较深刻些. 测试的类型如下: 01 <?php 02   03 $a; 04 $b = false; 05 $c = ''; 06 $d = 0; 07 $e = null; 08 $f = array(); 09   10 ?> empty() 首先是empty的var_dump输出:

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

0607am抽象类&amp;接口&amp;析构方法&amp;tostring&amp;小知识点

/*class ren{ public static $color;//静态 static function () { ren::$color; self::$color;//self只能写在类里面,代表这分类 }} */ //不能实例化的类:抽象类abstract class Animal //关键字abstract{ public $dong; public $jiao; function chi() { } function shui() { }}class Ren extends Ani

记录神经网络中一些小知识点

记录神经网络中一些小知识点 1 Caffe中的blob维度 Caffe中的blob具有4个维度,分别是num,channel,width和height: 其中我们在定义各个网络层时,常用到的一个参数numout,就是指定的channel: 比如说,维度为1*3*5*5的数据输入网络(即每次输入一张5*5大小的3通道图),经过一个stride为2,pad为1,kernel为2,numout为2的卷积层后,维度就变成了1*2*3*3: 假如输入有n个通道,计算时,caffe就会对应产生n个filte

C++ 小知识点 WINAPI

int WINAPI WINMain 中,WINAPI含义 网友给出回答:在windef.h头文件中有如下定义#define WINAPI      __stdcall#define APIENTRY    WINAPIVC有两种函数调用方式 一种是__stdcall,另一种是__cdecl函数的调用方式有两种一种是PASCAL调用方式,另一种是C调用方式使用PASCAL调用方式,函数在返回到调用者之前将参数从栈中删除使用C调用方式,参数的删除是调用者完成的WinMain函数是由系统调用的,Wi

初学MySQL中的一些小知识点

写在前面,小弟初用博客记录学习路上的一点点小知识点,其中可能有个人理解方面的误差,或不明白的地方.希望各位大牛纠正指导,小弟感激不尽!这并不是什么帮助别人解决问题的文章,只是小弟将学习到的内容一一写在博客上,这样方便以后复习,还恳请大家勿喷.. 一.进入MySQL客户端 1.客户端可以通过.../MySQL/bin目录下的sql.exe运行客户端. 1.1:访问方式一: -u root -p /*可以直接在这段代码的后面添加密码,也可以按回车后再输入密码*/ 1.1:访问方式二: --host