php中0,空,null和false的区别

<?

$str1 = null;

$str2 = false;

echo $str1==$str2 ? ‘相等’ : ‘不相等’;

$str3 = "";

$str4 = 0;

echo $str3==$str4 ? ‘相等’ : ‘不相等’;

$str5 = 0;

$str6 = ‘0‘;

echo $str5===$str6 ? ‘相等’ : ‘不相等’;

$str7=0;

$str=false;

echo $str7==$str8 ? ‘相等’ : ‘不相等’;

?>

所以 空字符串(‘‘),false,NULL和0是值相等而类型不一样!

另外再说下,php中

=     一个等号是赋值

==    两个等号是判断相等且只比较值,不比较类型

===   三个等号是判断值和类型都相等

!=    不等于符号,只比较值,不管类型

!==   不全等符号,比较值和类型

时间: 2024-10-26 23:47:40

php中0,空,null和false的区别的相关文章

php中0,空,null和false之间区别

$a = 0; $b="0"; $c= ''; $d= null; $e = false; echo "5个变量-原始测试类型"; var_dump($a);//int 0 var_dump($b);//string '0' var_dump($c);//string '' var_dump($d);//null var_dump($e);//boolean false echo "<h4>empty测试</h4>"; v

js 中 0 和 null 、&quot;&quot; 的逻辑关系

在做字符串非空判断时,无意发现一个问题,记录下以便以后回顾. 问题描述:非空判断,只是校验传值的内容是否为"".null .undefined.当变量 赋值的字符串内容为 0,此时做非空校验竟然返回true,说当前变量值为空. 代码如下: 1 //模拟赋值 0 2 var str = "0"; 3 4 /** 5 * 判断字符是否为空的方法 6 * 为空 返回 true 7 * 不为空返回 false 8 * @param {Object} obj 9 */ 10

jquery 中cache为true与false 的区别

$.ajax({ type: "get", cache: false, url: url, success: function (msg) { } }); cache为true与false 的区别 true的话会读缓存,可能真的到服务器上. 假如上次访问了a.html,第二次的时候得到的是上次访问的a.html的结果,而不是重新到服务器获取. false的话会在url后面加一个时间缀,让它跑到服务器获取结果. cache只有GET方式的时候有效

Objective-c 中 nil, Nil, NULL和NSNull的区别

nil: A null pointer to an Objective-C object.( #define nil ((id)0)  ) nil表示一个Objective-C对象,这个对象的指针指向空 Nil: A null pointer to an Objective-C class. 首字母大写的Nil 和nil有一点不一样,Nil定义一个指向空的类,是class,而不是对象. #define Nil 0 NULL: A null pointer to anything else,  i

(基础篇) php中0与空 Null false的区别

<?php $test=0; if($test==''){ echo '<br />在php中,0即为空'; //被输出 } if($test===''){ echo '<br />在php中,0即为空'; //不被输出 } if($test==NULL){ echo '<br />在php中,0即为空'; //被输出 } if($test===NULL){ echo '<br />在php中,0即为空'; //不被输出 } if($test==fal

PHP中0、空、null和false的总结

php中很多人还不懂php中 0 , '' , null 和 false 之间的区别,这些区别有时会影响到数据判断的正确性和安全性,给程序的测试运行造成很多麻烦.另外在面试题中也会遇到这些问题,如下: <?php $str1 = null; $str2 = false; echo $str1==$str2 ? '相等' : '不相等'; $str3 = ""; $str4 = 0; echo $str3==$str4 ? '相等' : '不相等'; $str5 = 0; $str

PHP教程 php中0与空 Null false的区别

PHP教程php中0与空 Null false的区别 原因是在PHP中变量是以C语言的结构体来存储的,空字符串和NULL,false都是以值为0存储的,其中这个结构体有个zend_uchar type;这样的成员变量,他是用来保存变量的类型的,而空字符串的类型是string,NULL的类型是NULL,false是boolean. 这一点可以用echo gettype('');和echo gettype(NULL);来打印看看!而===运算符是不单比较值,还有比较类型的,所以第三个为false!

php null o false &#39;&#39;

php中很多还不懂php中0,"",null和false之间的区别,这些区别有时会影响到数据判断的正确性和安全性,给程序的测试运行造成很多麻烦.先看一个例子: <? $str1 = null; $str2 = false; echo $str1==$str2 ? '相等' : '不相等'; $str3 = ""; $str4 = 0; echo $str3==$str4 ? '相等' : '不相等'; $str5 = 0; $str6 = '0'; echo

Javascript 中的false、0、null、undefined和空字符串对象

在Javascript中,我们经常会接触到题目中提到的这5个比较特别的对象——false.0.空字符串.null和undefined.这几个对象很容易用错,因此在使用时必须得小心. 类型检测 我们下来看看他们的类型分别是什么: [html] view plaincopyprint? <script type="text/javascript"> alert(typeof(false) === 'boolean'); alert(typeof(0) === 'number')