Ch10 函式 網頁程式設計
大綱 認識函式 PHP內建函式 自訂函式:參數、傳回值 區域變數 v.s. 全域變數 靜態變數 匿名函式 可變動函式 2018/11/18
認識函式 函式 (function) 是將一段具有某種功能的敘述寫成獨立的程式單元,然後給予特定名稱,以提高程式的重覆使用性及可讀性。有些程式語言把函式稱為方法 (method)、程序 (procedure) 或副程式 (subroutine)。 2018/11/18
實用的PHP內建函式 數學函式 日期時間函式 字串函式 除了核心函式之外,還有一些函式會視PHP載入哪些Extensions而定,例如PHP必須有載入MySQL support,才能呼叫mysqli_connect() 函式建立資料庫連接。 至於PHP載入哪些Extensions,只要呼叫phpinfo() 函式就知道。 2018/11/18
自訂函式 我們可以使用function關鍵字定義函式,其語法: 例如: function function_name([argumentlist]) { statements; [return;|return value;] [statements;] } 2018/11/18
函式的參數 傳值呼叫:PHP預設的參數傳遞方式為「傳值呼叫」(call by value),函式無法改變參數的值,因為PHP傳遞給函式的是參數的值,而不是參數的位址,例如: 2018/11/18
函式的參數 傳址呼叫:PHP亦支援另一種常見的參數傳遞方式,叫做「傳址呼叫」(call by reference),函式能夠改變參數的值,因為PHP傳遞給函式的是參數的位址,而不是參數的值。若要將 前一例中的函式改為傳址呼叫,那麼只要在所定義的兩個參數n1、n2前面加上 & 符號即可: function swap(&$n1, &$n2) 2018/11/18
設定參數的預設值 可以在函式定義的同時設定參數的預設值 2018/11/18
變動長度參數串列 PHP提供了所謂的「變動長度參數串列」,也就是函式沒有一定的參數個數,為了處理這種函式,我們通常得借助於下列函式: func_num_args() func_get_arg(n) func_get_args() 2018/11/18
函式的傳回值 從函式傳回某個值時,可以使用return關鍵字 2018/11/18
區域變數 v.s. 全域變數 程式的所有區塊均能存取變數的值,稱為「全域變數」(global variable),例外的是在函式內定義的變數,稱為「區域變數」(local variable),只有函式內的敘述能夠存取區域變數的值,下面是一個例子。 2018/11/18
靜態變數 對於函式內的區域變數來說,當我們呼叫函式時,區域變數會被建立,而在函式執行完畢後,區域變數就會被釋放,換句話說,區域變數的值並不會被保留下來。 若要保留函式內區域變數的值,可以使用static關鍵字將它定義為「靜態變數」(static variable) 2018/11/18
匿名函式 PHP從5.3.0版開始支援匿名函式 (anonymous function) 功能,這項功能允許程式設計人員在沒有指定名稱的情況下建立函式 2018/11/18
可變動函式 可變動函式 (variable function) 指的是我們可以動態設定函式的名稱 2018/11/18