登录  /  注册

php数据类型转换实例详解

怪我咯
发布: 2017-04-27 17:09:24
原创
6368人浏览过

php是弱类型语言,因为在我们申明一个变量的时候,并不需要指明它保存的数据类型,但是php虽然是弱语言,但有时候仍然需要用到类型转换。

PHP允许转换的类型如下表:

转换操作符 转换类型 举例
boolean,bool 转换成布尔类型 (boolean)$num,(boolean)$str
string 转换成字符串 (string)$boo,(string)$flo
integer,int 转换成整形 (integer)$boo,(integer)$str
float,double 转换成浮点型 (float)$str
array 转换成数组 (array)$str
object 转换成对象 (object)$str

PHP中的类型转换非常简单,有三种转换方法:

第一种:

只需要在要转换的变量之前加上用括号括起来的类型名称即可,像下面这样:

<?php
$num1=3.14;
$num2=(int)$num1;
var_dump($num1);
echo "<br/>";
var_dump($num2);
?>
登录后复制

代码运行结果:

20170424094845.png

第二种:

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

<?php
$a="123.9abc";
$int=intval($a); //转换后数值:123
var_dump($int);
echo "<br/>";
$float=floatval($a); //转换后数值:123.9
var_dump($float);
echo "<br/>";
$str=strval($float); //转换后字符串:"123.9"
var_dump($str);
?>
登录后复制

代码运行结果:

2.png

第三种:

使用settype()函数,该函数可以将指定的变量转换成指定的数据类型,语法如下:

settype(mixed var,string type)
登录后复制

参数var为指定的变量;参数type为指定的数据类型。参数type有7个可选值,即boolean,float,integer,array,null,object和string,如果转换成功setype()函数返回true,否则返回false。

<?php
$num=12.8;
$flg=settype($num,"int");
var_dump($flg);  //输出bool(true)
echo "<br/>";
var_dump($num); //输出int(12)
?>
登录后复制

代码运行结果:

3.png

1486188938564607.gif当字符串转换为整型或浮点型时,如果字符串是以数字开头的,就会先把数字部分转换为整型,在舍去后面的字符串;如果数字中含有小数点,则会取到小数前一位。

PHP数据类型转换实例

本实例将使用第一种和第三种两种方法将指定的字符串进行类型转换,比较两种方法之间的不同,代码如下:

<?php
header("content-type:text/html;charset=utf-8");        //设置编码
$num=&#39;3.1415926r*r&#39;;
echo &#39;使用(integer)操作符转换变量$num类型:&#39;;        //使用integer转换类型
echo (integer)$num .&#39;<br/>&#39;;
echo &#39;输出变量$num的值:&#39;.$num.&#39;<br/>&#39;;               //输出原始变量$num
echo &#39;使用settype函数转换变量$num类型:&#39;;
echo settype($num,&#39;integer&#39;).&#39;<br/>&#39;;                 //使用settype函数转换类型
echo &#39;输出变量$num的值:&#39;.$num;                       //输出原始变量$num
                       
?>
登录后复制

代码运行结果:

4.jpg

从上面的的实例可以看到,使用integer操作符能直接输出转换后的变量类型,并且原变量不发生任何变化。而是用settype()函数返回的是1,也就是true,原变量就改变了,在实际应用中,可根据自己的需求选择转换方式。

下一节,我们讲解“怎么检测数据类型”。

以上就是php数据类型转换实例详解的详细内容,更多请关注php中文网其它相关文章!

智能AI问答
PHP中文网智能助手能迅速回答你的编程问题,提供实时的代码和解决方案,帮助你解决各种难题。不仅如此,它还能提供编程资源和学习指导,帮助你快速提升编程技能。无论你是初学者还是专业人士,AI智能助手都能成为你的可靠助手,助力你在编程领域取得更大的成就。
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
关于CSS思维导图的课件在哪? 课件
凡人来自于2024-04-16 10:10:18
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2024 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号