PHP数据类型

PHP数据类型

1、标量数据类型

4种标量类型

Boolean(布尔型)

integer(整型)

float/double(浮点型)

string(字符串型)

 

2、复合数据类型

两种复合类型

array(数组)

object(对象)

3、特殊数据类型

两种特殊类型

resource(资源)

NULL

4、转换数据类型

5、检测数据类型

 

①标量数据类型

类型

说明

boolean(布尔型)

这是最简单的类型。只有两个值,真(true)和假(false)

string(字符串型)

字符串就是连续的字符序列,可以是计算机所能表示的一切字符的集合

integer(整型)

整型数据类型只能包含整数。这些数据类型可以是正数或负数

float(浮点型)

浮点数据类型用于存储数字,和整型不同的是它有小数位

布尔型

注意:在PHP中不是只有false值才为假的,在一些特殊 情况下boolean值也被认为是false。这些特殊情况为: 0、0.0、"0"、空白字符串("")、只声明没有赋值的数组等。

 

字符串型

在PHP中,有3种定义字符串的方式,分别是单引号(')双引号(")界定符(<<<)。单引号和双引号是经常被使用的定义方式,定义格式如下:

<?php <?php

$a ='字符串'; 或 $a ="字符串";

?> ?>

单引号与双引号的区别:

(1)两者的不同之处在于,双引号中所包含的变量会自动被替换成实际数值,而单引号中包含的变量则按普通字符串输出。

(2)对转义字符的使用。使用单引号时,只要对单引号"'"进行转义即可,但使用双引号(")时,还要注意"""、"$"等字符的使用。这些特殊字符都要通过转义符"\"来显示。

转义字符

输出

\n

换行(LF 或 ASCII 字符 0x0A(10))

\r

回车(CR 或 ASCII 字符 0x0D(13))

\t

水平制表符(HT 或 ASCII 字符 0x09(9))

\\

反斜杠

\$

美元符号

\'

单引号

\"

双引号

\[0-7]{1,3}

此正则表达式序列匹配一个用八进制符号表示的字符,如\467

\x[0-9A-Fa-f]{1,2}

此正则表达式序列匹配一个用十六进制符号表示的字符,如\x9f

 

②复合数据类型

数组

定义数组的语法格式如下:

$array = ('value1',' value2 '……)

$array[key] = 'value'

$array = array(key1 => value1, key2 => value2……)

其中,参数key是数组元素的下标,value是数组下标所对应的元素。以下几种都是

正确的格式:

$arr1 = array('This','is','a','example');

$arr2 = array(0 => 'php', 1=>'is', 'the' => 'the', 'str' => 'best ');

$arr3[0] = 'tmpname';

声明数组后,数组中的元素个数还可以自由更改。只要给数组赋值,数组就会自动增加长度

 

对象

编程语言所应用到的方法有两种:面向过程和面向对象。在PHP中,用户可以自由使用这两种方法。

 

③特殊数据类型

类型

说明

resource(资源)

资源是一种特殊变量,又叫做句柄,保存到外部资源的一个引用。资源是通过专门的函数来建立和使用的

null(空值)

特殊的值,表示变量没有值,唯一的值就是null

 

④转换数据类型

转换操作符

转换类型

举例

(boolean)

转换成布尔型

(boolean)$num、(boolean)$str

(string)

转换成字符型

(string)$boo、(string)$flo

(integer)

转换成整型

(integer)$boo、(integer)$str

(float)

转换成浮点型

(float)$str、(float)$str

(array)

转换成数组

(array)$str

(object)

转换成对象

(object)$str

在进行类型转换的过程中应该注意以下内容

  • 转换成boolean型时,null、0和未赋值的变量或数组会被转换为

false,其他的为真

  • 转换成整型时,布尔型的false转换为0,true转换为1,浮点型的

小数部分被舍去字符型如果以数字开头截取到非数字位,否则

出0。

类型转换还可以通过settype()函数来完成,该函数可以将指定的

变量转换成指定的数据类型。

bool settype ( mixed var, string type )

参数var为指定的变量,参数type为指定的类型,参数type有7个可

选值,即boolean、float、integer、array、null、object和string

。如果转换成功则返回true,否则返回false。

当字符串转换为整型或浮点型时,如果字符串是以数字开头

的,就会先把数字部分转换为整型,再舍去后面的字符串;如果

数字中含有小数点,则会取到小数点前一位。

可以看到,使用integer操作符能直接输出转换后的变量类型

。并且原变量不发生任何变化。而使用settype()函数返回的是1

,也就是true,而原变量被改变了。在实际应用中,可根据情况

自行选择转换方式。

 

⑤检测数据类型

PHP还内置了检测数据类型的系列函数,可以对不同类型的数据进行检

测,判断其是否属于某个类型,如果符合则返回true,否则返回false。检

测数据类型的函数如下表所示。

函数

检测类型

举例

is_bool

检查变量是否是布尔类型

is_bool(true)、is_book(false)

is_string

检查变量是否是字符串类型

is_string('string')、is_string(1234)

is_float/is_double

检查变量是否为浮点类型

is_float(3.1415)、is_float('3.1415))

is_integer/is_int

检查变量是否为整数

is_integer(34)、is_integer('34')

is_null

检查变量是否为null

is_null(null)

is_array

检查变量是否为数组类型

is_array($arr)

is_object

检查变量是否是一个对象类型

is_object($obj)

is_numeric

检查变量是否为数字或由数字组成的字符串

is_numeric('5')、is_numeric('bccd110')

 

posted @ 2020-06-29 21:10  Dorgan_Chen  阅读(272)  评论(0)    收藏  举报