掃二維碼與項目經(jīng)理溝通
我們在微信上24小時期待你的聲音
解答本文疑問/技術(shù)咨詢/運營咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流
本教程操作環(huán)境:windows7系統(tǒng)、php7.1版、DELL G3電腦

創(chuàng)新互聯(lián)公司是一家專注于成都網(wǎng)站制作、網(wǎng)站建設(shè)與策劃設(shè)計,靖江網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)公司做網(wǎng)站,專注于網(wǎng)站建設(shè)十余年,網(wǎng)設(shè)計領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:靖江等地區(qū)。靖江做網(wǎng)站價格咨詢:18980820575
PHP強制類型轉(zhuǎn)換
PHP 中的強制類型轉(zhuǎn)換和其他語言很類似,可以在要轉(zhuǎn)換的變量之前加上用括號括起來的目標類型(例如$var = (int)3.1415;),也可以使用具體的類型轉(zhuǎn)換函數(shù)(例如 intval()、floatval()、strval() 等)或者 settype() 來轉(zhuǎn)換類型。
使用在變量之前加上用括號括起來的目標類型的方式強制轉(zhuǎn)換變量類型時,括號中允許使用的變量類型如下所示:
(int)、(integer):轉(zhuǎn)換成整型;
(bool)、(boolean):轉(zhuǎn)換成布爾類型;
(float)、(double)、(real):轉(zhuǎn)換成浮點類型;
(string):轉(zhuǎn)換成字符串類型;
(array):轉(zhuǎn)換成數(shù)組類型;
(object):轉(zhuǎn)換成對象類型。
使用具體的轉(zhuǎn)換函數(shù) intval()、floatval()、boolval()、strval() 等來轉(zhuǎn)換變量的類型時,這些函數(shù)的作用如下所示:
intval():用于獲取變量的整數(shù)值;
floatval():用于獲取變量的浮點值;
boolval():用于獲取變量的布爾值;
strval():用于獲取變量的字符串值。
【示例】使用以上幾個函數(shù)強制轉(zhuǎn)換變量的類型。
';
$float = floatval($str);
echo '變量 $float 的類型為:'.gettype($float).'
';
$string = strval($str);
echo '變量 $string 的類型為:'.gettype($string);
?>
運行結(jié)果如下:
變量 $int 的類型為:integer 變量 $float 的類型為:double 變量 $string 的類型為:string
上面介紹的兩種強制類型轉(zhuǎn)換的方式都不會改變被轉(zhuǎn)換變量本身的類型,而是通過將轉(zhuǎn)換得到的新類型的數(shù)據(jù)賦值給新的變量,原變量的類型和值不變。
如果需要改變變量本身的類型可以使用 settype() 函數(shù)來完成,函數(shù)的語法格式如下:
settype(mixed &$var, string $type)
其中,$var 為要轉(zhuǎn)換的變量;$type 為要轉(zhuǎn)換的類型,可以是 boolean(bool)、integer(int)、float(double)、string、array、object、null。
【示例】使用 settype() 函數(shù)強制轉(zhuǎn)換變量的類型。
$bool 的類型為:'.gettype($bool); ?>
運行結(jié)果如下:
$str 的類型為:integer $bool 的類型為:string
使用強制類型轉(zhuǎn)換有以下幾點需要注意:
整型轉(zhuǎn)化為浮點型,由于浮點型的精度范圍遠大于整型,所以轉(zhuǎn)化后的精度不會改變;
浮點型轉(zhuǎn)化為整型,將會自動舍棄小數(shù)部分,只保留整數(shù)部分。如果一個浮點數(shù)超過整型數(shù)字的有效范圍,其結(jié)果將是不確定的;
字符串轉(zhuǎn)化為數(shù)字時,是從字符串開始到第一個不是數(shù)字的字符結(jié)束(不符合的內(nèi)容清空),也就是說如果字符串第一個字符不是數(shù)字的話,轉(zhuǎn)換后的結(jié)果為 0;
NULL 值轉(zhuǎn)為字符串,結(jié)果為空字符。

我們在微信上24小時期待你的聲音
解答本文疑問/技術(shù)咨詢/運營咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流