php等号(==)与全等(===)


<?php

require_once ‘Person.php‘;
header("content-type:text/html;charset=utf-8");
$person001=new Person("wuxifu", 110);
$person002=new Person("wuxifu", 110);
$person003=$person001;
//全等(===)推断首先要数据类型要一样,数据类型不一样就为false
   //(1)是同一数据类型后,假设是对象(假设是同一对象则为true否者为false)

   echo "<br/>person001与person002不是同一对象的情况下,不全等*************<br/>";
if($person001===$person002)
{
echo "person001===person002是同一对象";
}else
{
echo "person001!==person002不是同一对象";

}
echo "<br/>person001与person003是同一对象的情况下,全等**************<br/>";
if($person001===$person003)
{
echo "person001===person003是同一对象";
}else
{
echo "person001!==person003不是同一对象";

}
//(2)是同一数据类型后,假设是数组(假设内容一样则为true否者为false)
$array=array(110,120,130);
$array2=array(110,120,130);
$array3=$array;
echo "<br/><br/>array与array2不是同一数组,但内容一样,全等*************<br/>";
if($array===$array2)
{
echo "array===array2";
}else
{
echo "array!==array2";
}
echo "<br/>array与array3不是同一数组,但内容一样,全等************************<br/>";
if($array===$array3)
{
echo "array===array3";
}else
{
echo "array!==array3";
}
echo "<br/>array与array3不是同一数组,内容也不一样,不全等***********************<br/>";
$array3[0]=0;
if($array===$array3)
{
echo "array===array3";
}else
{
echo "array!==array3";
}
echo "<br/>";
//(3)是同一数据类型后,假设是四种标量类型(boolean,integer,float,string),值一样则为true否者为false
echo "<br/>是同一数据类型后,假设是四种标量类型(boolean,integer,float,string),值一样则为true否者为false<br/>";

$nums=110;
$nums2=120;
$nums3=110;
if($nums===$nums2)
{
echo "nums===nums2值一样";
}else
{
echo "nums!==nums2值不一样";

}
    echo "<br/>";
    if($nums===$nums3)
{
echo "nums===nums3值一样";
}else
{
echo "nums!==nums3值不一样";

}
//(4)不是同一种数据类型,则为false
    echo "<br/><br/>不是同一种类型为false不全等********************************<br/>";
    if($nums===true)
{
echo "nums===true";
}else
{
echo "nums!==true";

}
echo "<br/>";
if($person001===true)
{
echo "person001===true";
}else
{
echo "person001!==true";

}

?>




*************************************************************


<?php
require_once ‘Person.php‘;
header("content-type:text/html;charset=utf-8");
$person001=new Person("wuxifu", 110);
$person002=new Person("wuxifu", 110);
$person003=$person001;
//等(==)推断首先要数据类型一样不,不一样的话,假设等号有一边是boolean类型则还有一边转换成boolean类型,否则等号右边的会强制转换成左边的数据类型
   //(1)是同一数据类型后,假设是对象(仅仅要两对象的内容一样则为true否者为false)
   echo "<br/>person001与person002不是同一对象的情况下,但内容一样等*************<br/>";

if($person001==$person002)
{
echo "person001==person002内容一样";
}else
{
echo "person001!=person002内容不一样";

}
echo "<br/>person001与person003是同一对象的情况下(内容一样),等**************<br/>";
if($person001==$person003)
{
echo "person001==person003是同一对象";
}else
{
echo "person001!=person003不是同一对象";

}
//(2)是同一数据类型后,假设是数组(假设内容一样则为true否者为false)
$array=array(110,120,130);
$array2=array(110,120,130);
$array3=$array;
echo "<br/><br/>array与array2不是同一数组,但内容一样,等*************<br/>";
if($array==$array2)
{
echo "array==array2";
}else
{
echo "array!=array2";
}
echo "<br/>array与array3不是同一数组,但内容一样,等************************<br/>";
if($array==$array3)
{
echo "array==array3";
}else
{
echo "array!=array3";
}
echo "<br/>array与array3不是同一数组,内容也不一样,不等***********************<br/>";
$array3[0]=0;
if($array==$array3)
{
echo "array===array3";
}else
{
echo "array!==array3";
}
echo "<br/>";
//(3)是同一数据类型后,假设是四种标量类型(boolean,integer,float,string),值一样则为true否者为false
echo "<br/>是同一数据类型后,假设是四种标量类型(boolean,integer,float,string),值一样则为true否者为false<br/>";

$nums=110;
$nums2=120;
$nums3=110;
if($nums==$nums2)
{
echo "nums==nums2值一样";
}else
{
echo "nums!==nums2值不一样";

}
    echo "<br/>";
    if($nums==$nums3)
{
echo "nums==nums3值一样";
}else
{
echo "nums!=nums3值不一样";

}
//(4)不是同一种数据类型,假设等号某一边有boolean类型的值,则将还有一边转换成boolean类型,否则等号右边的会转成等号左边的数据类型
    echo "<br/><br/>不是同一种数据类型,假设等号某一边有boolean类型的值,则将还有一边转换成boolean类型,否则等号右边的会转成等号左边的数据类型********************************<br/>";

    if($nums==true)
{
echo "nums==true";
}else
{
echo "nums!=true";

}
echo "<br/>";
if($person001==true)
{
echo "person001==true";
}else
{
echo "person001!=true";

}
echo  "<br/>";
if(true==$nums)
{
echo "true==nums";
}else
{
echo "true!=nums";

}
echo "<br/>";
if(true==$person001)
{
echo "true==person001";
}else
{
echo "true!=person001";

}
echo "<br/>";
if($array==$person001)
{
echo "array==person001";
}else
{
echo "array!=person001";

}
echo "<br/>";
if($array==true)
{
echo "array==true";
}else
{
echo "array!=true";

}

?>

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。