php資料型別轉換實例詳解
Apr 27, 2017 pm 05:09 PMPHP是弱型別語言,因為在我們申明一個變數的時候,並不需要指明它保存的資料型別,但是PHP雖然是弱語言,但有時候還是需要用到型別轉換。
PHP允許轉換的類型如下表:
轉換運算子 | 轉換型別 | 範例 |
boolean,bool | 轉換成布林類型 | (boolean)$num,(boolean)$str |
string | 轉換成字串 | (string)$boo,(string)$flo |
integer,int | ##轉換成整形(integer)$boo,(integer)$str | |
##轉換成浮點型 | #(float)$str | |
轉換成陣列 | (array)$str | |
轉換成物件 | (object)$str |
第一種:
只需要在要轉換的變數之前加上用括號括起來的型別名稱即可,像下面這樣:
<?php $num1=3.14; $num2=(int)$num1; var_dump($num1); echo "<br/>"; var_dump($num2); ?>
登入後複製
程式碼運行結果:
第二種:
使用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); ?>
登入後複製
程式碼執行結果:
#第三種:
使用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) ?>
登入後複製
程式碼執行結果:
本實例將使用第一種和第三種兩種方法將指定的字串進行型別轉換,比較兩種方法之間的不同,程式碼如下:
<?php header("content-type:text/html;charset=utf-8"); //设置编码 $num='3.1415926r*r'; echo '使用(integer)操作符转换变量$num类型:'; //使用integer转换类型 echo (integer)$num .'<br/>'; echo '输出变量$num的值:'.$num.'<br/>'; //输出原始变量$num echo '使用settype函数转换变量$num类型:'; echo settype($num,'integer').'<br/>'; //使用settype函数转换类型 echo '输出变量$num的值:'.$num; //输出原始变量$num ?>
登入後複製
程式碼執行結果:
#從上面的的實例可以看到,使用integer操作符能直接輸出轉換後的變數類型,且原變數不發生任何變化。而是用settype()函數回傳的是1,也就是true,原變數就改變了,在實際應用中,可依自己的需求選擇轉換方式。
下一節,我們講解「
怎麼偵測資料型別以上是php資料型別轉換實例詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱門文章
擊敗分裂小說需要多長時間?
3 週前
By DDD
倉庫:如何復興隊友
3 週前
By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前
By 尊渡假赌尊渡假赌尊渡假赌
公眾號網頁更新緩存難題:如何避免版本更新後舊緩存影響用戶體驗?
3 週前
By 王林
R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
1 週前
By 尊渡假赌尊渡假赌尊渡假赌

熱門文章
擊敗分裂小說需要多長時間?
3 週前
By DDD
倉庫:如何復興隊友
3 週前
By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前
By 尊渡假赌尊渡假赌尊渡假赌
公眾號網頁更新緩存難題:如何避免版本更新後舊緩存影響用戶體驗?
3 週前
By 王林
R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
1 週前
By 尊渡假赌尊渡假赌尊渡假赌

熱門文章標籤

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)