PHP几个变量类型的一点注意事项

PHP的变量类型有以下几种:

  1. 标量类型

    - boolean(布尔型)
    - integer(整型)
    - float(浮点型,也称double)
    - string(字符串)
  2. 复合类型

    - array(数组)
    - object(对象)
  3. 特殊类型

    - resource(资源)
    - NULL
    

查看表达式的值和类型:var_dump($var);

布尔值(boolean):

PHP中,只有以下值被认为FALSE,其他都是TRUE(摘自细说PHP):

  • 布尔值FALSE
  • 整型值0(零)为假,-1和其他非零值(不论正负)一样,被认为是TRUE
  • 浮点型值0.0(零)
  • 空白字符串和字符串”0″
  • 没有成员变量的数组
  • 没有单元的对象(仅适用于PHP4)
  • 特殊类型NULL(包括尚未设定的变量)

布尔值echo并不输出,想要输出,需要使用gettype()

整型(integer):

八进制符号数值前加0;十六进制加0x。
表达式计算结果都以十进制输出。

浮点数(float or double):

永远不要相信浮点数结果精确到了最后一位,也永远不要比较两个浮点数是否相等。

字符串(String):

PHP不会解析单引号中的变量,双引号则会;单引号效率更高。(转义反斜杠换行同C)
另外,如果要指定变量结束,应用花括号{}把变量括起来:

$beer = 'Heineken';
echo "He drank some ${beer}s"
echo "He drank some $beers" //并没有beers这个变量 

字符串的运算可以参考:

  1. 下面代码的执行结果是( C )。
<?php
      echo 1+2+"3+4+5";
?>

A.0 B.3 C.6 D."33+4+5";

同一些编程语言不同,PHP中截取了数字部分(到非数值暂停),就变成了1+2+3的运算了

NULL:

NULL不表示空格也不表示零,以下会被认为是NULL

  • 将变量直接赋值为NULL
  • 声明的变量尚未被赋值
  • 被unset()函数销毁的变量

注:NULL字节("0")并不等同于PHP的NULL函数。

植入部分

如果您觉得文章不错,可以通过赞助支持我。

如果您不希望打赏,也可以通过关闭广告屏蔽插件的形式帮助网站运作。

标签: 知识, 语法, 题目

添加新评论