在 php 中定義函數使用 function 關鍵字,基本語法為 function 函數名(參數列表) { 函數體 },如 function sayhello($name) { echo “hello, $name”; },調用時直接使用函數名加括號并傳遞對應參數即可。php 函數參數傳遞主要有三種方式:1. 按值傳遞是默認方式,函數操作的是參數的副本,不影響外部變量;2. 按引用傳遞通過在參數前加 & 符號實現,函數內對參數的修改會影響外部變量;3. 可變數量參數使用 … 語法,適用于不確定參數數量的情況,增強函數適應性。
在 PHP 中,函數是組織代碼的重要方式,它能幫助我們復用邏輯、提高代碼可維護性。定義和調用一個函數并不復雜,但要真正掌握參數傳遞的方式,才能寫出更靈活的代碼。
如何定義一個函數?
PHP 中使用 function 關鍵字來定義函數。基本語法如下:
function 函數名(參數列表) { // 函數體 }
例如:
立即學習“PHP免費學習筆記(深入)”;
function sayHello($name) { echo "Hello, $name"; }
函數名不區分大小寫,但推薦使用小寫字母加駝峰命名法(如:getUserName)。函數可以有返回值,使用 return 語句即可。
怎么調用函數?
定義好函數后,就可以在程序中通過函數名加括號來調用它。如果函數需要參數,就在括號里傳入對應的值。
比如上面定義的 sayHello() 函數,可以這樣調用:
sayHello("Tom"); // 輸出:Hello, Tom
注意參數的類型和數量最好與函數定義一致,否則可能會出錯或得到非預期結果。
函數參數的幾種傳遞方式
PHP 的函數參數傳遞主要有以下幾種方式,每種適用于不同場景:
1. 按值傳遞(默認方式)
這是最常見的方式,函數接收的是參數的副本,修改參數不會影響原始變量。
示例:
function changeName($name) { $name = "Jerry"; } $myName = "Tom"; changeName($myName); echo $myName; // 輸出仍然是 Tom
2. 按引用傳遞(使用 & 符號)
如果你想讓函數內部對參數的修改影響到外部變量,可以在定義函數時,在參數前加上 &。
示例:
function changeName(&$name) { $name = "Jerry"; } $myName = "Tom"; changeName($myName); echo $myName; // 輸出 Jerry
這種方式常用于需要“帶回”多個值的情況,或者處理大數據對象避免復制。
3. 可變數量參數(PHP 5.6+)
如果你不確定函數需要多少個參數,可以用 … 來接收不定數量的參數。
示例:
function sum(...$numbers) { return array_sum($numbers); } echo sum(1, 2, 3); // 輸出 6
這種方式在寫通用工具函數時非常方便。
小結一下
定義和調用函數是 PHP 編程的基礎操作,而參數傳遞方式的選擇則決定了函數的靈活性和安全性。按值傳遞適合大多數情況,按引用適合需要改變外部變量的場景,而可變參數則增強了函數的適應能力。
基本上就這些,別看不多,但在實際開發中用得挺頻繁的。