php变量的初始值 在php里定义一个变量,它有初始值吗?单独echo $t;就没有输出但是如果: if($t==0){ $t=8;} echo $t;就可以输出8 为什么呢?请指教,谢谢!! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 看一下PHP关于true和false的定义 测试一下,应该输出全是1<?phpclass o {}echo false == 0.00;echo false == 0;echo false == '';echo false == null;echo false == '0';echo false == array();echo false == new o(); 你这样试试就知道原因鸟if($t===0){ $t=8;} 其实,if语句在判断的时候已经给$t赋值了,赋值后肯定为真;接着重新给变量赋值,因此,最后输出$t=8。 真的已经赋值了吗?if($t===0){ $t=8;} echo $t; php中若无显式的赋值,则变量的初值为空,其类型依据上下文决定 if($t===0){ $t=8;}echo $t;在这段代码中,===是判断类型和值都要相等.这里输出$t是没有值if($t==0){ $t=8;}echo $t;$t没有值,转换为boolean时为false 0转换为boolean 是也为false所以会执行if中的代码 让$t=8 应该是值没有给好吧!php初始值很怪的. zend framework 的错误提示问题, 指教下 关于一个数组$value的问题 select中的值怎样才能全选中 求一个简单的int型日期的sql---在线等 apache 重写的问题 MYSQL中的保留字怎么处理,紧急!!!!!!!!!!!!! 关于数据库取结果的问题 哪位高手帮帮我。。在线等待回复。。 急!!!!!请帮忙! 想要重现高负载下的session丢失(文件存储session) preg_replace_callback 回调函数能不能使用多个参数? 关于return的返回的问题
<?php
class o {
}echo false == 0.00;
echo false == 0;
echo false == '';
echo false == null;
echo false == '0';
echo false == array();
echo false == new o();
if($t===0){
$t=8;
}
其实,if语句在判断的时候已经给$t赋值了,赋值后肯定为真;接着重新给变量赋值,因此,最后输出$t=8。
$t=8;
}
echo $t;
$t=8;
}
echo $t;
在这段代码中,===是判断类型和值都要相等.这里输出$t是没有值if($t==0){
$t=8;
}
echo $t;$t没有值,转换为boolean时为false
0转换为boolean 是也为false
所以会执行if中的代码 让$t=8