數(shù)據(jù)一共有三種轉(zhuǎn)換類型,分別是強(qiáng)制轉(zhuǎn)換,永久轉(zhuǎn)換,以及轉(zhuǎn)換函數(shù)轉(zhuǎn)換。本篇文章通過對這三種轉(zhuǎn)換方式的介紹,帶大家深入了解類型轉(zhuǎn)換,一起和小編學(xué)習(xí)吧。
第一種、強(qiáng)制轉(zhuǎn)換
通過強(qiáng)制轉(zhuǎn)換的數(shù)據(jù),不影響數(shù)據(jù)原本的類型,僅僅將該數(shù)據(jù)臨時(shí)轉(zhuǎn)換了。
<?php echo gettype((string)500),'--',gettype(500),'<hr>'; echo gettype(strval(500)),'--',gettype(500),'<hr>'; echo gettype(strval(true)),'--',gettype(true),'<hr>'; ?>
其結(jié)果是:
string--integer string--integer string--boolean
可以看到雖然我們將數(shù)據(jù)類型轉(zhuǎn)換了,但是原來數(shù)據(jù)是什么類型,現(xiàn)在依然是什么類型,并沒有因?yàn)轭愋娃D(zhuǎn)換而改變原有類型。
第二種、永久轉(zhuǎn)換
<?php $old=500; echo "原類型".gettype($old),'<hr>'; $current=gettype(settype($old,'string')); echo "現(xiàn)類型". gettype($current),'<hr>'; ?>
它的結(jié)果為:
原類型integer 現(xiàn)類型string
通過永久轉(zhuǎn)換過的數(shù)據(jù),其數(shù)據(jù)原有類型也發(fā)生改變。
echo gettype($old);
結(jié)果為:
string
通過上述案例可以看到我們將數(shù)據(jù)轉(zhuǎn)換之后,我們原有數(shù)據(jù)類型也隨之發(fā)生改變。
第三種、轉(zhuǎn)換函數(shù)轉(zhuǎn)換
通過intval() floatval() strval()三個(gè)轉(zhuǎn)換函數(shù)進(jìn)行轉(zhuǎn)換,可以根據(jù)需求轉(zhuǎn)換成不同類型。
<?php $str="123.9abc"; echo intval($str),'--',gettype($str),'<hr>'; echo floatval($str),'--',gettype($str),'<hr>'; echo strval($str),'--',gettype($str),'<hr>'; ?>
讓我們看看他的輸出結(jié)果:
123--string 123.9--string 123.9abc--string
可以看到不同的轉(zhuǎn)換函數(shù),轉(zhuǎn)換成了不同的類型,同時(shí)其原有字符串類型不發(fā)生改變。
推薦:《PHP視頻教程》