PHP 為動態弱型別語言,變數型別隨賦值自動改變:
$foo = "0"; // string
$foo++; // string "1"
$foo += 1; // int 2
$foo = $foo + 1.3; // float 3.3
$foo = 5 + "10 Little Piggies"; // int 15
float → 全部視為 float 運算,結果為 floatint 運算,結果為 intC 風格語法:(type)$var
| 轉換目標 | 語法 |
|---|---|
| 整數 | (int)、(integer) |
| 浮點數 | (float)、(double)、(real) |
| 字串 | (string) |
| 陣列 | (array) |
| 物件 | (object) |
| 布林 | (bool)、(boolean) |
括號內允許空白:(int) = ( int )。
.、e、E → 視為 float,否則 int1 + "10.5" // float 11.5
1 + "-1.3e3" // float -1299
1 + "bob-1.3e3" // int 1
1 + "10 Small Pigs" // int 11
詳細規則參考 C 標準庫 strtod(3)。
gettype($var); // 回傳型別字串
is_int(), is_float(), is_string(), is_array(), is_object(), is_bool(), is_null()