php學習筆記 函式

2022-08-10 11:21:08 字數 2329 閱讀 4652

與其他語言類似,php函式可以傳參,可以有返回值,但也有不同之處,如變數函式

目錄

<?php

/** @param number $a

* @param number $b

* @return number

*/function add($a, $b

)

echo add(10.5, 11); //

21.5

引用傳參必須傳變數,不能傳常量。

<?php      

function show(&$a)

$b = 10;

echo

$b."

"; //

10 show($b

);

echo

$b."

"; //

20

php函式可以指定預設值,如果沒有傳遞引數,則使用預設值,指定預設值順序必須從右向左。

<?php

function add($a, $b, $c=10)

echo add(50,60)."

"; //

120echo add(50,60,20)."

"; //

130

php函式可以使用函式 func_get_args() 獲取所有引數,它返回乙個陣列;可以使用 func_num_args() 獲取引數總數;使用函式func_num_arg(i)獲取第i個引數。

<?php

function

add()

return

$sum

; }

echo add(1,2,3,4,5); //

15

變數函式是指將函式名字儲存在變數中,根據變數的值不同可以呼叫不同的函式,在其他語言中要想實現變數函式非常繁瑣,而在php中可以直接使用變數函式。

<?php

function

add()

return

$sum

; }

$func_name = "add";

echo

$func_name(2,4,6); //

12

在函式呼叫時,如果引數中傳的不是乙個變數或乙個值,而是乙個函式,這就是**函式引數。

<?php

function filter_range($num, $func

) }

function filter($i

) filter_range(10,"filter"); //

1 2 4 7 8

<?php

function add($a, $b

)

echo

call_user_func("add", 1, 2); //

3echo

call_user_func_array("add", array(1,2)); //

3

直接和間接的呼叫自己的函式叫做遞迴函式。

<?php        

function factorial($num

) else

}echo factorial(5); //

120

php可以使用 include 包含自定義的php檔案函式庫,注意:include不是簡單的copy到當前檔案,對於非php檔案它還有執行的功能。

<?php

include "function.inc.php"; //

相當於copy

include "head.html"; //

非php檔案解析html檔案並顯示

include "demo.txt";

my_add(1,2); //

執行function.inc.php函式

在大型設計中可能會include乙個函式庫多次,那麼函式就會重複定義,可以用 include_once 解決重複包含的問題,但是建議使用 include ,因為include效率高。

類似的,包含其他檔案還可以使用 require 和 require_once ,require和include函式幾乎等價,區別在於在指令碼執行時包含,當處理失敗時,include產生乙個警告,而require則導致乙個致命的錯誤。因此建議包含關鍵性檔案時使用require函式,包含非關鍵性檔案時使用include

PHP學習筆記 04 函式

1.函式的概念 2.函式的定義格式 3.函式的命名規範 對於函式,命名規則和變數一樣的,但是函式是不區分大小寫的 4.函式的呼叫過程與返回值 函式呼叫時,執行權進入函式,當函式所有語句執行完畢,函式結束,交回執行權,或者碰到return語句時,函式返回,交回執行權。5.引數的傳值方式 6.動態函式 ...

PHP學習筆記10 函式

1.php自定義函式 function f1 2.帶返回和引數的自定義函式 可以返回陣列和物件的任意型別 function f2 a,b 3.可變函式 通過變數的值來呼叫函式,因為變數的值是可變的,所以可以通過改變乙個變數的值來實現呼叫不同的函式。可變函式的呼叫方法為變數名加上括號。function...

PHP學習筆記三 函式

1 格式 funciton 函式名 引數1,引數2,引數3.2 函式命名要求 1 不能以系統函式名或關鍵字重名。2 不能以數字和特殊字元開頭,只能是大小寫英文本母和下劃線開頭。3 不能在函式名中包含空格或特殊字元。3 引數 1 可以自由定義引數的數量,沒有限制。2 帶有初始值的引數,在沒有被賦值的時...