在 PHP 中,floatval()
函數用于將變量轉換為浮點數
floatval()
函數將字符串轉換為浮點數時,它會從字符串的起始位置開始解析,直到遇到一個無法識別為數值的字符。例如:$str1 = "123.45abc";
$str2 = "abc123.45";
echo floatval($str1); // 輸出 123.45
echo floatval($str2); // 輸出 0,因為字符串以非數值字符開頭
floatval()
可以將布爾值 true
和 false
分別轉換為浮點數 1.0
和 0.0
。$bool1 = true;
$bool2 = false;
echo floatval($bool1); // 輸出 1.0
echo floatval($bool2); // 輸出 0.0
floatval()
函數可以將整數和浮點數原樣返回,不會產生任何改變。$int = 42;
$float = 3.14;
echo floatval($int); // 輸出 42.0
echo floatval($float); // 輸出 3.14
floatval()
函數會產生一個警告,并返回 0.0
。$array = [1, 2, 3];
$obj = new stdClass();
echo floatval($array); // 輸出 0.0,并產生警告
echo floatval($obj); // 輸出 0.0,并產生警告
null
或未定義變量轉換為浮點數時,floatval()
函數會返回 0.0
。$null = null;
echo floatval($null); // 輸出 0.0
echo floatval($undefined_var); // 輸出 0.0,并產生警告(如果啟用了錯誤報告)
總之,floatval()
函數在處理不同類型的變量時,會根據上述規則進行轉換。需要注意的是,在處理數組、對象和未定義變量時,可能會產生警告。為了避免這些問題,建議在使用 floatval()
函數之前先檢查變量的類型。