PHP的数据类型与大部分主流语言类型一样,它把类型划分为标量类型、复合类型、特殊类型,还有伪类型。
很有趣的是PHP变量的类型不是程序员可以指定的,而是由PHP根据该变量使用的上下文在运行时决定的。就像Javascript里的var定义变量,它可以是一个对象,一个整数,一个浮点数……
注:
如果想查看某个表达式的值和类型,用 var_dump()
。
注:
如果只是想得到一个易读懂的类型的表达方式用于调试,用 gettype()
。要查看某个类型,不要
用 gettype()
,而用 is_type
函数。
如果要将一个变量强制转换为某类型,可以对其使用强制转换或者
settype()
函数。
一、标量类型 boolean
(1)初次见面
<?php
$foo =True;
// == is an operator which test
// equality and returns a boolean
if ($action == "show_version") {
echo "The version is 1.23";
}
// this is not necessary...
if ($show_separators == TRUE) {
echo "<hr>\n";
}
// ...because you can simply type
if ($show_separators) {
echo "<hr>\n";
}
?>
要明示地将一个值转换成 boolean
,用 (bool)
或者 (boolean)
来强制转换。
很多情况下不需要用强制转换,因为当运算符,函数或者流程控制需要一个 boolean
参数时,该值会被自动转换。
(2)会认为是“错”的时候
以下情况boolean
变量的值都是“错”值,False。其它所有值都被认为是True的,注意这里也包括了-1等所有负值。
a. 布尔值 FALSE ,
b. 整型值 0(零),
c. 浮点型值 0.0(零) ,
d. 空白字符串和字符串 "0" ,
e. 没有成员变量的数组 ,
f. 没有单元的对象(PHP4) ,
g. 特殊类型 NULL(包括尚未设定的变量)
<?php
var_dump((bool) ""); // bool(false)
var_dump((bool) 1); // bool(true)
var_dump((bool) -2); // bool(true)
var_dump((bool) "foo"); // bool(true)
var_dump((bool) 2.3e5); // bool(true)
var_dump((bool) array(12)); // bool(true)
var_dump((bool) array()); // bool(false)
var_dump((bool) "false"); // bool(true)
?>
学习资料来源:《PHP 手册》
运维网声明
1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网 享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com