PHP学习笔记-全等于

      1.全等于不仅要求变量的值相同,还需类型相同。如下例

<?php
$a=10;
$b='10';
var_dump($a==$b,$a===$b);
?>

       输出结果是bool(true) bool(false),这就体现出了==和===的区别。

      2.关于一个全等于的例子,请看如下代码

<?php
$str='hyper';
$s='h';
if(strpos($str,$s)==false)
{
    echo $s.'不存在于'.$str.'之中';
}
else
{
    echo $s.'存在于'.$str.'之中';
}
?>

      输出结果是(h不存在于hyper之中),这就奇怪了,h明明就在hyper之中,然而输出结果却不是。仔细观察,发现h是hyper的第一个字母,所以strpos()函数的输出结果是0,0与false作==运算,结果0就强制转换成布尔值false,当然就不对了,要想防止这种情况,我们采用===,这样不仅比较值,也比较类型,就不会出错了。改正后,如下

<?php
$str='hyper';
$s='h';
if(strpos($str,$s)===false)
{
    echo $s.'不存在于'.$str.'之中';
}
else
{
    echo $s.'存在于'.$str.'之中';
}
?>

      输出结果是(h存在于hyper之中)。

 

posted on 2015-08-18 16:10  wshtl  阅读(216)  评论(0编辑  收藏  举报

导航