類型戲法PHP 在變量定義中不需要(或不支援)明示的類型定義;變量類型是根據使用該變量的上下文所決定的。也就是說,若果把一個字串值賦給變量 var,var 就成了一個字串。若果又把一個整型值賦給 var,那它就成了一個整數。 PHP 的自動類型轉換的一個例子是加號「+」。若果任何一個運算數是浮點數,則所有的運算數都被當成浮點數,結果也是浮點數。否則運算數會被解釋為整數,結果也是整數。注意這並沒有改變這些運算數本身的類型;改變的僅是這些運算數如何被求值。
若果上面兩個例子看上去古怪的話,參見字串轉換為數值。 若果要強制將一個變量當作某種類型來求值,參見類型強制轉換一節。若果要改變一個變量的類型,參見 settype()。 若果想要測試本節中任何例子的話,可以用 var_dump() 函數。
類型強制轉換PHP 中的類型強制轉換和 C 中的非常像:在要轉換的變量之前加上用括號括起來的目的類型。 容許的強制轉換有:
注意在括號內容許有空格和製表符,所以下面兩個例子功能相同:
當在某些類型之間強制轉換時確切地會發生什麼可能不是很明顯。更多訊息見如下小節: | |||