文档章节

php isset,emtpy,is_null,真假值判断小记

病态S
 病态S
发布于 10/24 11:40
字数 401
阅读 5
收藏 0
PHP

  

<?php
header("Content-type:text/html; charset='utf-8'");
echo "<pre>";

$a = '';
$b = ' ';
$c = "\r\n";
$d = 0;
$e = false;
$f = null;

var_dump(strlen($a),strlen($b),strlen($c));

echo 'isset:<br>';
var_dump(isset($a),isset($b),isset($c),isset($d),isset($e),isset($f),isset($g));
echo '总结:null和未定义的变量均为false,表示不存在<br>';

echo 'is_null:<br>';
var_dump(is_null($a),is_null($b),is_null($c),is_null($d),is_null($e),is_null($f),is_null($g));
echo '总结:null和未定义的变量均为null<br>';

echo 'empty:<br>';
var_dump(empty($a),empty($b),empty($c),empty($d),empty($e),empty($f),empty($g));
echo '总结:null,长度为0的空字符串,数值0,布尔值false和未定义的变量均为空<br>';

echo 'true or false:<br>';
var_dump(!$a,!$b,!$c,!$d,!$e,!$f,!$g);
echo '总结:null,长度为0的空字符串,数值0,布尔值false和未定义的变量均为false,表示假<br>';


 

?>

运行结果如下:

int(0)
int(1)
int(2)
isset:
bool(true)
bool(true)
bool(true)
bool(true)
bool(true)
bool(false)
bool(false)
总结:null和未定义的变量均为false,表示不存在
is_null:
bool(false)
bool(false)
bool(false)
bool(false)
bool(false)
bool(true)
bool(true)
总结:null和未定义的变量均为null
empty:
bool(true)
bool(false)
bool(false)
bool(true)
bool(true)
bool(true)
bool(true)
总结:null,长度为0的空字符串,数值0,布尔值false和未定义的变量均为空
true or false:
bool(true)
bool(false)
bool(false)
bool(true)
bool(true)
bool(true)
bool(true)
总结:null,长度为0的空字符串,数值0,布尔值false和未定义的变量均为false,表示假

© 著作权归作者所有

共有 人打赏支持
病态S
粉丝 1
博文 83
码字总数 35824
作品 0
程序员
私信 提问
PHP isset()与empty()的使用区别详解

PHP的isset()函数 一般用来检测变量是否设置格式:bool isset ( mixed var [, mixed var [, ...]] ) 功能:检测变量是否设置 返回值: 若变量不存在则返回 FALSE若变量存在且其值为NULL,也返...

christina_12345
2014/03/07
0
0
php性能优化:使用 isset()判断字符串长度速度比strlen()更快

php中如何判断字符串的长度?很多人第一想到的应该就是 strlen() mb_strlen() 这些函数了。但是从程序性能上来讲,这两个函数在判断字符串长度的过程中都不是最佳的,虽然他们是专业级的检测...

微信迷
2014/02/27
0
0
isset and is_null的区别

isset 在PHP 中是一种语言结构 像echo empty等 is_null 是一个函数 一般函数有三大部分 函数名 函数体 返回值 isset 和 is_null的区别: isset 变量有没有被赋值 is_null 判断变量是否为空 =n...

四明狂客
2016/09/09
8
0
is_null、is_bool、empty、isset的区别

我们在做判断的时候经常用到isnull、isbool、empty、isset等判断函数,但是这么多的判断函数到底用哪一个,他们之间有什么区别吗,可能很多人php老鸟说到这里也有点含糊,现在我们就一一来讨论...

Minho
2012/02/14
0
1
php中empty()、is_null()、isset()、(bool)的区别

注:上图 isSet() 错了,应该是小写 isset() 。 empty() 判断变量是否为空,如果变量是非空或非零的值,则 empty() 返回 FALSE。换句话说,"" 、0 、"0" 、NULL 、FALSE 、array() 、var $va...

斑驳
2014/07/28
0
0

没有更多内容

加载失败,请刷新页面

加载更多

RabbitMQ+PHP 教程三(Publish/Subscribe)用yii2测试通过

介绍 在前面的教程中,我们创建了一个工作队列。工作队列背后的假设是每个任务都交付给一个工作人员处理。在这一部分中,我们将做一些完全不同的事情——我们将向多个消费者发送消息。此模式...

hansonwong
22分钟前
2
0
关于JAVA你必须知道的那些事(四):单例模式和多态

好吧,今天一定要把面向对象的最后一个特性:多态,给说完。不过我们先来聊一聊设计模式,因为它很重要。 设计模式 官方的解释是,设计模式是:一套被反复使用,多数人知晓的,经过分类编目,...

拾光TM
22分钟前
1
0
ES6 系列之 Babel 是如何编译 Class 的(下)

摘要: ## 前言 在上一篇 [《 ES6 系列 Babel 是如何编译 Class 的(上)》](https://github.com/mqyqingfeng/Blog/issues/105),我们知道了 Babel 是如何编译 Class 的,这篇我们学习 Babel ...

阿里云官方博客
23分钟前
1
0
附实例!实现iframe父窗体与子窗体的通信

欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 本文由前端林子发表于云+社区专栏 本文主要会介绍如何基于MessengerJS,实现iframe父窗体与子窗体间的通信,传递数据信息。同时本...

腾讯云加社区
29分钟前
1
0
JSP页面传List集合到Action中

1:JSP页面(前端用的是H-UI框架) <div class="codeView docs-example"> <table class="table table-border table-bordered table-striped"> <thead> ......

uug
33分钟前
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部