首頁 > 後端開發 > PHP問題 > php中function關鍵字的用法是什麼

php中function關鍵字的用法是什麼

青灯夜游
發布: 2023-03-15 09:18:01
原創
5884 人瀏覽過

function是php中的一個關鍵字,用於使用者宣告自訂函數,語法為「function 函數名稱([參數1, 參數2, ..., 參數n]){函數體;[ return 傳回值;]}」。

php中function關鍵字的用法是什麼

本教學操作環境:windows7系統、PHP7.1版、DELL G3電腦

PHP 的函數可以分為兩種,即PHP 的預定義函數和使用者自訂的函數。使用者可以在自己的程式或 PHP 檔案中直接使用預定義函數,PHP 提供了大量功能豐富的預定義函數供 PHP 開發人員使用,大大提高了開發效率。而自訂函數,是開發人員專門用來解決特定需求的功能模組。

而function就是php中用來宣告自訂函數的關鍵字。

在PHP 中宣告一個自訂的函數可以使用下面的語法格式:

function 函数名 ([参数1, 参数2, ..., 参数n]){
    函数体;
    [return 返回值;]
}
登入後複製

函數的語法格式說明如下:

  • ##每個函數的第一行都是函數頭,由宣告函數的關鍵字function、函數名稱和參數列表三部分組成,其中每一部分完成特定的功能;

  • 每個自訂函數都必須使用function 關鍵字宣告;

  • 函數名稱可以代表整個函數,可以將函數命名為任何名稱,只要遵循變數名稱的命名規則即可。每個函數都有唯一的名稱,但要注意的是,在PHP 中不能使用函數重載,所以不能定義重名的函數,也包括不能和系統函數同名;

  • 宣告函數時函數名稱後面的小括號「()」也是必須有的,在小括號中包含了一組可以接受的參數列表,參數就是宣告的變量,然後在呼叫函數時可以將變數傳遞給函數。參數清單可以為空,也可以有一個或多個參數,多個參數之間使用逗號分隔;

  • #關鍵字「function」與函數名稱之間需要使用空格分隔開,而函數名稱與包裹參數列表的小括號之間不需要使用空格分隔,當然加上空格也不會出錯;

  • 函數體位於函數頭後面,需要使用大括號“{}”包裹起來。函數的所用工作都是在函數體中完成的。函數被呼叫後,先執行函數體中的第一個語句,執行到 return 語句或最外面的大括號「}」後結束,回到呼叫函數的地方。函數體中可以使用任何有效的PHP 程式碼,甚至是其他的函數或類別的定義也可以在函數體中聲明;

  • 使用關鍵字return 可以從函數中傳回一個值或表達式,程式執行到return 語句時,該表達式將被計算,然後返回到呼叫函數的地方繼續執行。

因為參數列表和傳回值在函數定義時都不是必須的,而其他的部分是必須有的,所以宣告函數時通常有以下幾種方式。

1) 在宣告函數時可以沒有參數清單:

function 函数名(){
    函数体;
    return 返回值;
}
登入後複製

2) 在宣告函數時可以沒有傳回值:

function 函数名(参数1, 参数2, ..., 参数n){
    函数体;
}
登入後複製

3) 在宣告函數時可以沒有參數清單與傳回值:

function 函数名(){
    函数体;
}
登入後複製

函數的呼叫

不管是自訂的函數或是系統函數,如果函數不會被調用,就不會執行。只要在需要使用函數的位置,使用函數名稱和參數清單進行呼叫即可。

函數被呼叫後開始執行函數體中的程式碼,執行完畢返回到呼叫的位置繼續向下執行。所以在函數呼叫時函數名稱可以總結出以下三個作用。

  • 透過函數名稱可以呼叫函數,並且讓函數體的程式碼運行,呼叫幾次函數體就會執行幾次;

  • 如果函數有參數列表,也可以透過在函數名稱後面的小括號中傳入對應的值給參數,在函數體中使用參數來改變函數內部程式碼的執行行為;

  • #如果函數有回傳值,當函數執行完畢時就會將return 後面的值回傳到呼叫函數的位置,這樣就可以把函數名稱當做函數傳回的值使用。

提示:只要聲明的函數在腳本中可見,就可以透過函數名稱在腳本的任意位置進行調用,在PHP 中可以在函數的聲明之後調用,也可以在函數的宣告之前調用,也可以在函數中呼叫函數。

【範例】將我們講解for 迴圈時印出九九乘法表的程式封裝到函數中,程式碼如下所示:

<?php
    function table(){       //定义函数
        for ($i = 1; $i <= 9; $i++) {
            for ($j = 1; $j <= $i; $j++) {
                echo $j.&#39; * &#39;.$i.&#39; = &#39;.$i*$j.&#39;  &#39;;
            }
            echo &#39;<br>&#39;;
        }
    }
    table();//调用函数
?>
登入後複製

運行結果如下:

1 * 1 = 1 
1 * 2 = 2  2 * 2 = 4 
1 * 3 = 3  2 * 3 = 6  3 * 3 = 9 
1 * 4 = 4  2 * 4 = 8  3 * 4 = 12  4 * 4 = 16 
1 * 5 = 5  2 * 5 = 10  3 * 5 = 15  4 * 5 = 20  5 * 5 = 25 
1 * 6 = 6  2 * 6 = 12  3 * 6 = 18  4 * 6 = 24  5 * 6 = 30  6 * 6 = 36 
1 * 7 = 7  2 * 7 = 14  3 * 7 = 21  4 * 7 = 28  5 * 7 = 35  6 * 7 = 42  7 * 7 = 49 
1 * 8 = 8  2 * 8 = 16  3 * 8 = 24  4 * 8 = 32  5 * 8 = 40  6 * 8 = 48  7 * 8 = 56  8 * 8 = 64 
1 * 9 = 9  2 * 9 = 18  3 * 9 = 27  4 * 9 = 36  5 * 9 = 45  6 * 9 = 54  7 * 9 = 63  8 * 9 = 72  9 * 9 = 81
登入後複製

【範例】下面我們來定義一個函數,來實現簡單的加法運算,程式碼如下所示:

<?php
    function add($num1,$num2){
        $a = $num1 + $num2;
        return $a;
    }
    $sum = add(11,5);
    echo &#39;$sum = &#39;.$sum.&#39;<br>&#39;;
    echo &#39;6 + 33 =&#39;.add(6,33).&#39;<br>&#39;;
    echo &#39;42 + 21 =&#39;.add(42,21).&#39;<br>&#39;;
    echo &#39;167 + 153 =&#39;.add(167,153);
?>
登入後複製

運行結果如下:

$sum = 16
6 + 33 =39
42 + 21 =63
167 + 153 =320
登入後複製
推薦學習:《

PHP影片教學

以上是php中function關鍵字的用法是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板