上一篇文章中我們了解了什麼是參數,如何去創建一個函數學習了形式參數和實際參數,有需要的請看《php函數之形式參數與實際參數是什麼意思? 》。這次我們深入了解參數,介紹向函數傳遞參數中的按值傳遞。
傳遞參數給函數的方式有四種,分別是值傳遞、引用傳遞、預設參數和可變長度參數。今天我們就來介紹如何進行按值傳參。
我們先來看一個小例子。
<?php function swap($a, $b){ echo '函数内,交换前 $a = '.$a.', $b = '.$b.'<br>'; $temp = $a; $a = $b; $b = $temp; echo '函数内,交换后 $a = '.$a.', $b = '.$b.'<br>'; } $x = 5; $y = 7; echo '函数外,交换前 $x = '.$x.', $y = '.$y.'<br>'; swap($x, $y); echo '函数外,交换后 $x = '.$x.', $y = '.$y; ?>
輸出結果是
函数外,交换前 $x = 5, $y = 7 函数内,交换前 $a = 5, $b = 7 函数内,交换后 $a = 7, $b = 5 函数外,交换后 $x = 5, $y = 7
在這範例中,我們可以看到在函數內部,值確實是交換的,而在函數外部,值不會改變。
透過這個小例子。我們也大致了解了按值傳遞參數,以下我就來詳細介紹一下。
以值傳遞是PHP中函數的預設值傳遞方法,也稱為「複製值傳遞
」。顧名思義,值轉移方法將複製參數的值,然後將其轉移到函數的形式參數。因此,在函數中操作參數的值不會影響函數外的參數。因此,如果不希望函數修改參數的值,可以按值傳遞。
就像上面那個例子一樣,在函數內部,值確實是交換的,而在函數外部,值不會改變。因此可以說,函數的值傳遞只是傳遞變數的副本。那麼要是想讓函數能夠操作函數外實參的話,就需要使用引用傳遞的方式了。
你想要的php知識在這裡 → →php影片教學
#以上是php函數之如何按值傳遞參數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!