djdqlt

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理
nullstring string NULL 转换为 "",进行数字或词汇比较
boolnull 任何其它类型 转换为 boolFALSE < TRUE
object object 内置类可以定义自己的比较,不同类不能比较,相同类和数组同样方式比较属性(PHP 4 中),PHP 5 有其自己的说明
stringresourcenumber stringresourcenumber 将字符串和资源转换成数字,按普通数学比较
array array 具有较少成员的数组较小,如果运算数 1 中的键不存在于运算数 2 中则数组无法比较,否则挨个值比较(见下例)
array 任何其它类型 array 总是更大
object 任何其它类型 object 总是更大

 

-2>false    //结果为true
-2==true   //结果为true

 

var_dump(0=='a'); // boolean true  (0==0)
echo  0=='a';  //  1

var_dump(0=='1a'); // boolean false (0==1)
echo  0=='1a';  //  0
$str1= null;
$str2=false;
echo $str1==$str2?1:2 ;//1  null强制转化为false

$str3="";
$str4=0;
echo $str3==$str4?1:0;//1 空强制转化为数字0

$str5=0;
$str6='0';
echo $str5===$str6?1:0; //0 类型不一致,全相等比较

$a1=null;
$a2=false;
$a3=0;
$a4="";
$a5='0';
$a6='null';
$a7=array();
$a8=array(array());

echo empty($a1)?'true':'false';// true
echo empty($a2)?'true':'false';//true
echo empty($a3)?'true':'false';//true  数字中0判断为空
echo empty($a4)?'true':'false';//true
echo empty($a5)?'true':'false';//true  字符串中0也判断为空
echo empty($a6)?'true':'false';//false 
echo empty($a7)?'true':'false';//true
echo empty($a8)?'true':'false';//false

 

bool  empty( mixed $var )

如果 var 是非空或非零的值,则empty() 返回 FALSE。换句话说,""0"0"NULLFALSEarray()var $var; 以及没有任何属性的对象都将被认为是空的,如果 var 为空,则返回 TRUE。empty() 只能用于变量,传递任何其它参数都将造成Paser error而终止运行。

bool isset ( mixed var [, mixed var [, ...]] )   用来检测变量是否设置
若变量不存在则返回 FALSE
若变量存在且其值为NULL,也返回 FALSE
若变量存在且值不为NULL,则返回 TURE
同时检查多个变量时,每个单项都符合上一条要求时才返回 TRUE,否则结果为 FALSE

使用 unset() 释放变量之后,它将不再是 isset()。
PHP函数isset()只能用于变量,传递任何其它参数都将造成解析错误。
检测常量是否已设置可使用 defined() 函数。

当要 判断一个变量是否已经声明的时候 可以使用 isset 函数
当要 判断一个变量是否已经赋予数据且不为空 可以用 empty 函数
当要 判断 一个变量 存在且不为空 先isset 函数 再用 empty 函数

bool is_null ( mixed $var )

如果 varnull 则返回 TRUE,否则返回 FALSE


 

posted on 2014-05-26 13:34  无心之源  阅读(293)  评论(0编辑  收藏  举报