PHP-数据类型
目录
什么是数据类型?
数据类型:data type ,在PHP中指的是存储的数据本身的类型,而不是变量的类型,php是一种弱类型语言,变量本身没有数据类型
PHP的八种数据类型
在PHP中将数据类型分为三大类八小类;
基本数据类型:
整形:int/intger,系统分配4个字节存储,表示整数类型;
浮点型:float/double,系统分配4个字节存储,表示整数类型(有前提)
字符串型:string,系统根据实长度分配,表示字符串,表示字符串的符号是单引号或双引号;
布尔类型:bool/boolean,表示布尔类型的只有两个值:True和False;
复合类型类型
对象类型:object,可以存放对象(面对对象);
数组类型:array,可以一次性存储多个数据;
特殊数据类型:
资源类型:resource,存放资源数据(通常存放都是php外部数据,如:数据库、文件 等...);
空类型:NULL , 只有一个值就是NULL(不能运算);
类型转换
类型转换:在很多的条件下,需要指定的数据类型,需要外部数据(当前php取得的数据),转换成目标的数据类型;
在PHP中有两种类型转换方式:
- 自动转换 :系统根据需求自己判断,自己转换(用的较多,缺点:效率低);
- 强制(手动)转换:认为根据需要的目标类型转换;
强制转换的规则:在变量之前添加一个(),在里面写上对应的类型(NULL不能直接转换,需要使用函数unset{});
<?php
$a='1.12.111abc';
$b='abcd12.41.15';
//强制转换
echo '<br>',(int)$a,'<br/>',(int)$b;
//强制转换空类型的使用方式
unset($a);
echo $a;
在转换过程中常用的类型有:布尔类型(用于判断)、转数值类型(算术运算);
其它类型转换成布尔类型只有两种结果:True或False,在PHP中很少类型会转化成False;
其它类型转数值说明:
- 布尔值 True=1,False=0;
- 字符串转数值有自己的规则;
- 以字母开头的字符串,永远为0;
- 以数字开头的字符串,取到碰到字符串为止(不会同时包含两个小数点);
数据类型的判断
数据类型判断是使用一组类型判断函数,来判断变量的数据类型
is_+类型名字+{变量名};(相同的数据类型结果返回True,否则返回False)
$a='112.1.1';
$b=21;
var_dump(is_int($a));
var_dump(is_int($b));
布尔类型不能使用echo来查看,需要使用var_drum();
$a=TRUE;
$b=FALSE;
var_dump($a,$b);
PHP中还有一组函数可以获取以及设定数据(变量)的类型;
- Gerrype(变量名):获取类型,得到的是该类型对应的字符串
- Settype(变量名,类型):设定数据类型
//判断类型 $a='112.1.1'; $b=21; echo gettype($a); echo gettype($b); //设置类型 var_dump(settype($a,'int')); //转换成功会返回True