強制轉換方法:1、在資料之前加上用括號括起來的目標類型“(int)”或“(float)”,可以將值轉為整數型別或浮點型,例如“ (int)$str”、“(float)$str”;2、使用intval()函數,可以將值轉為整數類型,語法“intval(值)”;3、使用floatval()函數,可以將值轉為浮點型,語法「floatval(值)」;4、使用settype()函數。
本教學操作環境:windows7系統、PHP8版、DELL G3電腦
php提供了兩種數值類型:
integer (整數型)
#float (浮點型, 也稱為double)
討論將值強制轉為數值類型,就是討論將值轉為整數或浮點型。下面聊聊轉換方法。
情況1:強制值轉為整數型別(3種方法)
方法1:在資料之前加上用括號括起來的目標類型「(int)」或「(integer)」
#(int)、(integer):轉換成整數型;
<?php header("Content-type:text/html;charset=utf-8"); $str = '123.456abc'; echo '变量 $str 的类型为:'.gettype($str).'<br>'; $int1 = (int)$str; echo '变量 $int1 的类型为:'.gettype($int1).'<br>'; $int2 = (integer)$str; echo '变量 $int2 的类型为:'.gettype($int2).'<br>'; ?>
方法2:使用intval()函數
intval() 函數用來取得變數的整數值。
intval() 函數透過使用指定的進位 base 轉換(預設為十進位),傳回變數 var 的 integer 數值。 intval() 不能用於 object,否則會產生 E_NOTICE 錯誤並傳回 1。
語法:
int intval ( mixed $var [, int $base = 10 ] )
參數說明:
#$var:要轉換成 integer 的數量值。
$base:轉換所使用的進位。
如果base 是0,透過偵測var 的格式來決定使用的進位:
<?php header("Content-type:text/html;charset=utf-8"); $str1="123d"; $str2=intval($str1); echo "字符串型转为int型:"; var_dump($str1); var_dump($str2); ?>
#方法3:使用settype()函數
settype()函數:用來設定變數的型別。 其可設定的型別為:<?php header("Content-type:text/html;charset=utf-8"); $str="52.36"; echo '原 $str:<br>'; var_dump($str); settype($str, 'integer'); echo '<br>现 $str:<br>'; var_dump($str); ?>
#情況1:強制值轉換為浮點數型別( 3種方法)
類別第一種情況,將值強制轉為浮點數型別同樣有3種常用方法。方法1:在資料之前加上用括號括起來的目標類型「(float)」、「(double)」或「(real)」
<?php header("Content-type:text/html;charset=utf-8"); $str = '123.456abc'; var_dump($str); $float1 = (float)$str; var_dump($float1); $float2 = (double)$str; var_dump($float2); $float3 = (real)$str; var_dump($float3); ?>
方法2:使用floatval()函數
floatval()函數是專門將其他型別轉換為浮點型別的函數,它可以取得變數的浮點值。註:floatval 不能用於陣列或物件。<?php header('content-type:text/html;charset=utf-8'); $var = '122.34343runoob'; echo "原数据类型:"; var_dump($var); $float= floatval($var); echo "修改后的类型:"; var_dump($float); ?>登入後複製
<?php header('content-type:text/html;charset=utf-8'); $var = TRUE; echo "原数据类型:"; var_dump($var); $float= floatval($var); echo "修改后的类型:"; var_dump($float); ?>
#方法3:使用settype()函數
settype ()函數可以將值轉為指定資料型別(由第二個參數控制)。 只需要將函數的第二個參數設為「float」即可將資料轉為浮點數。 附註:函數會修改原變數;若設定成功時傳回 TRUE, 失敗時傳回 FALSE。<?php header('content-type:text/html;charset=utf-8'); $foo = "5bar"; // string $bar = true; // boolean echo "原数据类型:"; var_dump($foo); var_dump($bar); settype($foo, "float"); settype($bar, "float"); echo "修改后的类型:"; var_dump($foo); var_dump($bar); ?>
#
推薦學習:《PHP影片教學》
以上是php怎麼將值強制轉為數值類型的詳細內容。更多資訊請關注PHP中文網其他相關文章!