数据类型
数据类型:data type,在PHP中指的是存储的数据本身的类型,而不是变量的类型,PHP是一种弱类型语言,变量本身没有数据类型;
PHP的八种数据类型
在PHP中数据类型分为三大类八小类:
简单(基本)数据类型:4个小类
整型:int/integer,系统分配4个字节存储,表示整数类型(有前提)
浮点型:float/double,系统分配8个字节存储,表示小数或整型存不下的整数
字符型:string,系统根据实际长度分配存储空间,表示字符串(引号)
布尔类型:bool/boolean,表示布尔类型,只有两个值:true和false
复合数据类型:2个小类
对象类型:object,存放对象(面向对象)
数组类型:array,存储多个数据(一次性)
特殊数据类型:2个小类
资源类型:resource,存放资源数据(PHP外部数据,如数据库,文件)
空类型:NULL,只有一个值就是NULL(不能运算)
类型转换
类型转换:在很多条件下,需要指定的数据类型,需要外部数据(当前PHP取得的数据)转换成目标数据类型;
在PHP中有两种类型转换方式:
1.自动转换:系统根据需求自己判定,自己转换(用的比较多,效率偏低)
2.强制(手动)转换:认为根据需要的目标类型转换
强制转换规则:在变量之前增加一个括号(),然后在里面写上对应的类型:int等,其中NULL类型需要用到unset函数
在转换过程中,用的比较多的就是转布尔类型(判断)和转数值类型(算术运算)
其他类型转布尔类型:true或者false,在PHP中比较少类型会变成false
其他类型转数值的说明:
1.布尔true为1,false为0
2.字符串转数值有自己的规则
2.1,以字母开头的字符串,永远为0
2.2,以数字开头的字符串,取到碰到字符串为止(不会同时包含两个小数点)
数据类型判断
通过一组类型判断函数,来判断变量,最终返回这个变量所保存数据的数据类型(相同结果为true,失败为false):是一组如is_开头后面跟类型名字的函数:is_XXX(变量名);
布尔类型不能用echo来查看,可以使用var_dump结构查看,
var_dump(变量1,变量2。。。)
还有一组函数可以用来获取以及设定数据(变量)的类型:
Gettype(变量名):获取类型,得到的是该类型对应的字符串
Settype(变量名):设定数据类型,与强制转换不同,
1.强制转换(类型)变量名,是对数据值复制的内容进行处理(不会处理实际的存储内容)
2.Settype会直接改变数据本身
<?php
//数据类型
//创建数据
$a = 'abc1.1.1';
$b = '1.1.1abc';
//自动转换
echo $a+$b; //1.1
//算术+运算,系统先转换成数值类型(整型和浮点型),然后运算
//强制转换
echo (flaot)$a,(float)$b; //01.1
//PHP7好像不会进行上述的自动转换
//判断数据类型
var_dump(is_int($a)); //false
var_dump(is_string($a)); //true
echo gettype($a);
//设置类型
var_dump(settype($b,'int'));
echo gettype($b),$b;
文章记录来源于B站up主黑马程序员发布的视频学习;1
记录只是为了便于自己的学习与查找; ↩︎