PHP学习——2类型

版权声明:本文为博主原创文章,仅供学习交流,未经博主允许不得转载。 https://blog.csdn.net/zjy_android_blog/article/details/81836039

PHP中支持9种原始数据类型。

包含四种标量类型(该种类型的变量本身存储的是值本身,不是值的索引):

  • boolean(布尔型)
  • integer(整型)
  • float(浮点型,也称作 double)
  • string(字符串)

三种复合类型(该种类型的变量本身存储的是值的索引,不是值本身)

  • array(数组)
  • object(对象)
  • callable(可调用)就是所谓的函数

还有两种特殊类型:

  • resource(资源)
  • NULL(无类型)空

除了这些原始数据类型,还有一些伪类型:

伪类型(pseudo-types) 是 PHP 文档里用于指示参数可以使用的类型和值。 请注意,它们不是 PHP 语言里原生类型。 所以不能把伪类型用于自定义函数里的类型约束(typehint)。

  • mixed(混合类型)
  • number(数字类型)
  • callback(回调类型,又称为 callable)
  • array|object(数组 | 对象类型)
  • void (无类型)

PHP中变量的类型通常不是由程序员设定的,确切地说,是由 PHP 根据该变量使用的上下文在运行时决定的。这中特性和Javascript非常相似,也就是PHP是一种弱类型的编程语言,我们不需要向计算机声明变量的类型(声明变量的类型是强类型语言和弱类型语言的区别,如:JAVA作为强类型的语言,我们在使用变量的时候总是需要去声明变量的类型)。

Note: 如果想查看某个表达式的值和类型,用 var_dump() 函数。

如果只是想得到一个易读懂的类型的表达方式用于调试,用 gettype() 函数。要检验某个类型,不要gettype(),而用 is_type 函数。以下是一些范例:

<?php

$var_bool = true;   // 布尔值 boolean
$var_str  = "foo";  // 字符串 string
$var_str2 = 'foo';  // 字符串 string
$var_int = 12;      // 整型 integer

echo gettype($var_bool); // 输出:  boolean
echo gettype($var_str);  // 输出:  string
echo gettype($var_int);  // 输出:  integer

// 如果是整型,就加上 4
if (is_int($var_int)) {
    $var_int += 4;
    echo "这是一个整型".$var_int;
}

// 如果 $var_bool 是字符串,就打印出来
// (啥也没打印出来)
if (is_string($var_bool)) {
    echo "这是字符串: $var_bool";
}

?>

如果要将一个变量强制转换为某类型,可以对其使用强制转换或者 settype() 函数。

猜你喜欢

转载自blog.csdn.net/zjy_android_blog/article/details/81836039