第一种、强制转换
通过强制转换的数据,不影响数据原本的类型,仅仅将该数据临时转换了。
<?php echo gettype((string)500),'--',gettype(500),'<hr>'; echo gettype(strval(500)),'--',gettype(500),'<hr>'; echo gettype(strval(true)),'--',gettype(true),'<hr>'; ?>
其结果是:
string--integer string--integer string--boolean
可以看到虽然我们将数据类型转换了,但是原来数据是什么类型,现在依然是什么类型,并没有因为类型转换而改变原有类型。
第二种、永久转换
<?php $old=500; echo "原类型".gettype($old),'<hr>'; $current=gettype(settype($old,'string')); echo "现类型". gettype($current),'<hr>'; ?>
它的结果为:
原类型integer 现类型string
通过永久转换过的数据,其数据原有类型也发生改变。
echo gettype($old);
结果为:
string
通过上述案例可以看到我们将数据转换之后,我们原有数据类型也随之发生改变。
第三种、转换函数转换
通过intval() floatval() strval()三个转换函数进行转换,可以根据需求转换成不同类型。
<?php $str="123.9abc"; echo intval($str),'--',gettype($str),'<hr>'; echo floatval($str),'--',gettype($str),'<hr>'; echo strval($str),'--',gettype($str),'<hr>'; ?>
让我们看看他的输出结果:
123--string 123.9--string 123.9abc--string
可以看到不同的转换函数,转换成了不同的类型,同时其原有字符串类型不发生改变。
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
评论(0)