微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

php数据类型转换学习笔记

常用的数据类型有字符串型、浮点型(单精度浮点型float、双精度浮点型double)、整形、布尔型

1 其他类型转化为整型

1.1 字符串型转化为整型

1.1.1 如果字符串全部为数字,则直接全部转换为整型,如果有小数点则会去除小数点后面的内容,如 '12' 跟 '12.3' 转换为整型后都为12

1.1.2 如果字符串以字母开头则不管中间或后面有多少数字或小数点,转换为整形后都为0。如'ab12.3c'转换为整型后为0

1.1.3 如果以数字开头,则会去掉数字后面的字符,如果有小数点则去除小数点后面的。如 '123.4abc' 、 '123abc' 转换为整形后都为123

1.2 浮点型转化为整型

1.2.1 如果浮点数含有小数点则去掉小数点后面的字符,如果没有则直接变为整型 。如:浮点数 12.6 转换为整形后为12

1.3 布尔型转化为整型

1.3.1 布尔型转换为整型时,true会转换为 1 false 会转换为 0其中NULL转换为整型后为0   所以如果要判断 if(NULL == 0){echo NULL等于0;} 是会返回NULL等于0的

2 其他类型转化为字符串型

2.1 整型、浮点型转换为字符串型是直接在数字上加引号 如12 12.3 转换为字符串后为 12 12.3

2.2 布尔型转换为字符串是,true会转换成字符串1,false 跟NULL转换为字符串结果为空字符串,不会有输出

3 其他类型转化为浮点型

3.1 整型直接转化为浮点型,数值不变,字符串转换为浮点型跟字符串转换为整型基本上是一样的,只不过是当字符串之间有小数点时,小数点会保存。如 “12.3abc” 转换之后为 12.3 其他形式的是一样的方法

3.2 布尔型转换为浮点型是,true会转换成浮点型 1,false 跟NULL转换为浮点型结果为0

4 其他类型转化为布尔型

4.1 空字符串转换为 布尔型为FALSE,非空为TRUE;整型跟浮点型的0转换为布尔型为FALSE,其他为TRUE

4.2 NULL转换为布尔型后结果为FALSE

PHP的数据类型转换属于强制转换,允许转换的PHP数据类型有:

•(int)、(integer):转换成整形

•(float)、(double)、(real):转换成浮点型

•(string):转换成字符串

•(bool)、(boolean):转换成布尔类型

•(array):转换成数组

•(object):转换成对象

PHP数据类型有三种转换方式:

•在要转换的变量之前加上用括号括起来的目标类型

•使用3个具体类型的转换函数intval()、floatval()、strval()

•使用通用类型转换函数settype(mixed var,string type)

第一种转换方式,(int)  (bool)  (float)  (string)  (array) (object),代码如下:

  1. <?PHP 
  2. $num1=3.14;    
  3. $num2=(int)$num1;    
  4. var_dump($num1); //输出float(3.14)    
  5. var_dump($num2); //输出int(3)    
  6. ?> 

第二种转换方式,intval()  floatval()  strval(),代码如下:

  1. <?PHP 
  2. $str=”123.9abc”;    
  3. $int=intval($str);     //转换后数值:123    
  4. $float=floatval($str); //转换后数值:123.9    
  5. $str=strval($float);   //转换后字符串:”123.9″     
  6. ?> 

第三种转换方式,settype();代码如下:

  1. <?PHP 
  2. $num4=12.8;    
  3. $flg=settype($num4,”int”);    
  4. var_dump($flg);  //输出bool(true)    
  5. var_dump($num4); //输出int(12)    
  6. ?> 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐