PHP细节分析

PHP虽然是一门弱类型语言,但是也有数据类型的概念,恰恰相反,正是由于php对数据类型的要求不是很严格,所以学习时,经常不注意,在使用时经常出现错误,这些错误,很多时候就出现在对数据类型判断时,模糊不清,乱用操作导致的。下面分析一下常用的操作:

1、"=="与"==="的区别

"==" 比较运算符,不会检查表达式的类型 它会认为空字符串、0、false都为null
"===" 恒等于,同时检查表达式的值与类型 只有一个变量的值真的为null时,它才代表null

<?php
	//==与===的比较
	$str1 = null;
	$str2 = false;
	$str3 = 0;
	$str4 = "";
		
	echo $str1 == null ? 'yes<br/>' : 'no<br/>';	//yes
	echo $str1 === null ? 'yes<hr/>' : 'no<hr/>';   //yes
 	echo $str2 == null ? 'yes<br/>' : 'no<br/>';    //yes
	echo $str2 === null ? 'yes<hr/>' : 'no<hr/>';   //no
	echo $str3 == null ? 'yes<br/>' : 'no<br/>';    //yes
	echo $str3 === null ? 'yes<hr/>' : 'no<hr/>';   //no
	echo $str4 == null ? 'yes<br/>' : 'no<br/>';    //yes
 	echo $str4 === null ? 'yes<br/>' : 'no<br/>';	//no
?>

  

2、isset()与empty()的区别

3、

原文地址:https://www.cnblogs.com/liwuming/p/4491835.html