PHP 有很多標準的函數和結構。還有一些函數需要和特定地 PHP 擴展模塊一起編譯,否則在使用它們的時候就會得到一個致命的“未定義函數”錯誤。例如,要使用 image 函數中的 imagecreatetruecolor(),需要在編譯 PHP 的時候加上 GD 的支持。或者,要使用 mysqli_connect() 函數,就需要在編譯 PHP 的時候加上 MySQLi 支持。有很多核心函數已包含在每個版本的 PHP 中如字符串和變量函數。調用 phpinfo() 或者 get_loaded_extensions() 可以得知 PHP 加載了那些擴展庫。同時還應該注意,很多擴展庫默認就是有效的。PHP 手冊按照不同的擴展庫組織了它們的文檔。請參閱配置,安裝以及各自的擴展庫章節(jié)以獲取有關如何設置 PHP 的信息。
手冊中如何閱讀函數原型講解了如何閱讀和理解一個函數的原型。確認一個函數將返回什么,或者函數是否直接作用于傳遞的參數是很重要的。例如,str_replace() 函數將返回修改過的字符串,而 usort() 卻直接作用于傳遞的參數變量本身。手冊中,每一個函數的頁面中都有關于函數參數、行為改變、成功與否的返回值以及使用條件等信息。了解這些重要的(常常是細微的)差別是編寫正確的 PHP 代碼的關鍵。
注意: 如果傳遞給函數的參數類型與實際的類型不一致,例如將一個 array 傳遞給一個 string 類型的變量,那么函數的返回值是不確定的。在這種情況下,通常函數會返回
null。但這僅僅是一個慣例,并不一定如此。從 PHP 8.0.0 起,這種情況下應拋出 TypeError 異常。