潍坊比较大的网站制作公司,外贸关键词网站,哪里网站备案快,长沙本地推广-数据类型-
数据类型#xff1a;data type#xff0c;在
PHP中指的是存储的数据本身的类型#xff0c;而不是变量的类型。
PHP是一种弱类型语言#xff0c;变量本身没有数据类型。
1.3.1PHP的八种数据类型
在PHP中将数据分为三大类八小类#xff1a;
简单#xff0…-数据类型-
数据类型data type在
PHP中指的是存储的数据本身的类型而不是变量的类型。
PHP是一种弱类型语言变量本身没有数据类型。
1.3.1PHP的八种数据类型
在PHP中将数据分为三大类八小类
简单基本数据类型4个小类
整型int/integer系统分配4个字节存储表示整数类型有前提
浮点型float/double系统分配8个字节存储表示小数或者整型存不下的整数
字符串型string系统根据实际长度分配表示字符串引号
布尔类型bool/boolean表示布尔类型只有两个值true和false
复合数据类型2个小类
对象类型object存放对象面向对象
数组类型array存储多个数据一次性
特殊数据类型2个小类
资源类型resource存放资源数据PHP外部数据如数据库、文件
空类型NULL只有一个值就是NULL不能运算
1.3.2类型转换
类型转换在很多的条件下需要指定的数据类型需要外部数据当前PHP取得的数据转换成目标数据类型
在PHP中有两种类型转换方式
1、 自动转换系统根据需求自己判定自己转换用的比较多效率偏低
2、 强制手动转换认为根据需要的目标类型转换
强制转换规则在变量之前增加一个括号()然后在里面写上对应类型int/integer….其中NULL类型用到unset()
在转换过程中用的比较多的就是转布尔类型判断和转数值类型算术运算
其他类型转布尔类型true或者false在PHP中比较少类型换变成false 其他类型转数值的说明
1、 布尔true为1false为0
2、 字符串转数值有自己的规则
2.1 以字母开头的字符串永远为0
2.2 以数字开头的字符串取到碰到字符串为止不会同时包含两个小数点 1.3.3类型判断
通过一组类型判断函数来判断变量最终返回这个变量所保存数据的数据类型相同结果为true失败为false是一组以is_开头后面跟类型名字的函数is_XXX(变量名)
Bool类型不能用echo来查看可以使用var_dump结构查看
Var_dump(变量1,变量2…)还有一组函数可以用来获取以及设定数据变量的类型
Gettype(变量名)获取类型得到的是该类型对应的字符串Settype(变量名,类型)设定数据类型与强制转换不同
1、 强制转换(类型)变量名是对数据值复制的内容进行处理不会处理实际存储的内容
2、 settype会直接改变数据本身1.3.4整数类型
整数类型保存整数数值范围限制4个字节存储数据最大就是32位42亿多。
但是在PHP中默认是有符号类型区分正负数
在PHP中提供了四种整型的定义方式十进制定义二进制定义八进制定义和十六进制定义
$a 120; //10进制
$a0b110; //2进制
$a0120; //8进制
$a0x120; //16进制十进制逢10进1能够出现的数字是0-9
二进制逢2进1能够出现的数字是0-1
八进制逢8进1能够出现的数字是0-7
十六进制逢16进1能够出现的数字是0-9以及a-fa表示10依次类推
进制转换手动转换
10进制转二进制除2倒取余法 不管得到的结果如何需要补足32位前面补000000000 00000000 00000000 00001010
10进制转二进制取出最大的2的N次方直到结果为0 二进制到十进制之间的转换从右侧开始将对应的第几位作为2的指数然后将所有的结果相加 PHP中不需要用户这么复杂的去计算提供了很多的函数进行转换
Decbin()十进制转二进制
Decoct()十进制转八进制
Dechex()十进制转十六进制
Bindec()二进制转十进制1.3.5浮点类型
浮点型小数类型以及超过整型所能存储范围的整数不保证精度精度范围大概在15个有效数字左右
浮点型定义有两种方式
$f 1.23;
$f 1.23e10; //科学计数法其中e表示底10简单说明浮点数为什么同样的字节数存储数据但是却能表示更大的数据呢
00000000 00000000 00000000 00000000 à 11111111 11111111 11111111 1111111 整形最大值所有位都是有效数据
浮点数红色7位算的结果是10的指数后面三个字节存储表示具体数值
00000000 00000000 00000000 00000000 à 11111111 11111111 11111111 1111111
尽量不用用浮点数做精确判断浮点数保存的数据不够精确而且在计算机中凡是小数基本上存的都不准确 1.3.6布尔类型
布尔类型两个值true和false通常是用于判断比较 在进行某些数据判断的时候需要特别注意类型转换
Empty()判断数据的值是否为“空”不是NULL如果为空返回true不为空返回false
Isset()判断数据存储的变量本身是否存在存在变量返回true不存在返回false