PHP 函數呼叫中,參數傳遞包括按值傳遞、按引用傳遞和預設參數。按值傳遞複製變數值,按引用傳遞修改原始變量,預設參數提供預定義值。實戰案例示範了按值傳遞計算稅額、按引用傳遞交換變數和使用預設參數建立貼文。
PHP 函數呼叫中的參數傳遞指南
在撰寫 PHP 函數時,了解如何傳遞參數至關重要。本文將深入探討 PHP 函數呼叫中的參數傳遞機制,並提供實戰案例,以幫助你掌握這個關鍵概念。
參數的傳遞方式
在PHP 中,參數可以透過多種方式傳遞:
按值傳遞
以下程式碼示範了按值傳遞:
function sum($a, $b) { $a += $b; } $x = 10; $y = 20; sum($x, $y); echo $x; // 输出:10
在該範例中,x
和y
變數按值傳遞給sum()
函數。函數內的運算不會修改原始變量,因此 echo $x
輸出 10,而不是 30。
按引用傳遞
按引用傳遞允許函數修改原始變數。若要按引用傳遞變量,請在函數參數前使用&
符號:
function sumByReference(&$a, &$b) { $a += $b; } $x = 10; $y = 20; sumByReference($x, $y); echo $x; // 输出:30
在該範例中,x
和y
變數按引用傳遞給sumByReference()
函數。函數內的操作會修改原始變量,因此 echo $x
輸出 30。
預設參數
預設參數允許你為函數參數指定預先定義的值。以下程式碼示範如何使用預設參數:
function greet($name = "World") { echo "Hello, $name!"; } greet(); // 输出:Hello, World! greet("John"); // 输出:Hello, John!
在該範例中,name
參數被指派了預設值為 "World"。如果沒有在呼叫時明確提供參數值,預設值將會被使用。
實戰案例
function calculateTax($amount, $rate) { return $amount * $rate; } $amount = 100; $rate = 0.08; $tax = calculateTax($amount, $rate); echo $tax; // 输出:8
在這個案例中,amount
和rate
變數會以值傳遞給calculateTax()
函數,函數傳回應支付的稅額。
function swap(&$a, &$b) { $temp = $a; $a = $b; $b = $temp; } $a = 10; $b = 20; swap($a, $b); echo $a; // 输出:20 echo $b; // 输出:10
在這個案例中,a
和b
變數按引用傳遞給swap()
函數,函數交換了變數的值。
function createPost($title, $content = "") { // 创建新的帖子... } createPost("My Post"); // 使用默认的内容值 "" createPost("My Post", "This is the content."); // 覆盖默认值
在這個案例中,第二個 content
參數有預設值為 ""。可以在呼叫函數時省略該參數,或提供一個自訂值來覆寫預設值。
以上是PHP 函數呼叫中的參數傳遞指南的詳細內容。更多資訊請關注PHP中文網其他相關文章!