`
myhome
  • 浏览: 6653 次
  • 性别: Icon_minigender_1
  • 来自: 广州
最近访客 更多访客>>
社区版块
存档分类
最新评论

草文随便学习PHP笔记-类型(二 - 1)

阅读更多

    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 手册》

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics