西部数码主机 | 阿里云主机| 虚拟主机 | 服务器 | 返回乐道官网
当前位置: 主页 > php教程 > php教程 >

php中怎么区别false与0

时间:2016-02-26 23:45来源: 作者: 点击:
PHP中当变量为0时,该变量同时也就等于false,那么如何区别0和false?这在有些条件语句中就很有用了,本文将举例说明. 首先看代码,本代码的功能是查找一个字符串中是否以某个词语开头 实
PHP中当变量为0时,该变量同时也就“等于”false,那么如何区别0和false?这在有些条件语句中就很有用了,本文将举例说明.
 
首先看代码,本代码的功能是查找一个字符串中是否以某个词语开头
 
实例代码如下:
 
$title = "Hello world."; 
$keyword = "you"; 
if(strpos($title , $keyword ) == 0) { 
    echo "正确"; 
} else { 
    echo "错误"; 
输出:正确
 
好像代码没错啊?为什么结果错了?查看帮助手册看到strpos()函数在字符串中查找词语的时候,如果存在该词语则返回该词语的索引位置,否则返回false,于是把代码做如下修改.
 
实例代码如下:
 
if(strpos($title , $keyword ) == 0) { 
    echo "正确"; 
} else if(strpos($title , $keyword ) == false) { 
    echo "错误"; 
输出:正确
 
怎么又是错的?原来PHP中当变量为0时,该变量同时也就“等于”false,那么如何区别0和false?其实很简单,把代码再修改一下:
 
实例代码如下:
 
if(strpos($title , $keyword ) === 0) { 
    echo "正确"; 
} else if(strpos($title , $keyword ) === false) { 
    echo "错误"; 
输出:错误
 
实例代码如下:
 
<?php 
/* 
 * 测试boolean 
 * 0 false 
 */ 
 $num = 0; 
 $bTest1 = false; 
 $bTest2 = true; 
 $strTest2 = 'false'; 
 if($num == $bTest1) 
 { 
  echo ('数字0与false是可以相等的');//显示 
 echo ("<br/>"); 
 } 
 if($bTest1) 
 { 
  echo('永不执行啊<br/>');//不显示 
 } 
 if(1) 
 { 
  echo('会执行吗,<br/>');//执行 
 } 
 if($bTest2) 
 { 
  echo('我是老大我要执行<br/>');//执行 
   
 } 
 else{ 
  echo('不要的都归我了哦<br/>'); 
 } 
 echo (false == 0);//显示1 表示相等 
 echo (true == 1);//显示1 表示相等 
function testReturn () 
 echo('aaaaa'); 
 return; 
 return 'bbbb'; 
 echo('cccc'); 
//return 表示该函数的返回就是执行到这下面的都将不执行了,exit是推出程序 
echo testReturn();//调用该函数 将输出 ‘aaaa' ’bbbbb'  
?> 
很多时候false也等于0,当我们要返回的值中含有0的时候,例如对数字的查询就要注意了,可以用===来判断是否完全相等,
 
PHP 有一个 gettype() 函数,得到变量的类型.可以使用 === 运算符(看好了,有三个等号).和 == 运算符 的区别在于该运算符同时比较数据的值和类型.
 
当终止条件中涉及不同的变量类型时,通过使用 ===和 !==运算符进行强类型检查是很重要的.
(责任编辑:好模板)
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
栏目列表
热点内容