php函式之如何用預設引數和可變長度引數方式傳遞?
上一篇文章中我們瞭解了向函式傳遞引數中的引用傳遞引數,有需要的請看《》。這次我們向大家介紹向函式傳遞引數中的另外兩種傳遞方式,有需要的可以參考參考。
向函式傳遞引數的方式有四種,分別是值傳遞、引用傳遞、預設引數和可變長度引數。之前兩篇文章介紹了值傳遞和引用傳遞,這次我們就來介紹預設引數和可變長度引數。
預設引數
首先來看一個小例子。
<?php function add($a, $b=56){ echo $a.' + '.$b.' = '.($a+$b).'<br>'; } add(11); add(37, 29); ?>
輸出結果是
11 + 56 = 67 37 + 29 = 66
這個例子可以很清晰的看到,當提供的引數為一個,並且另一個引數有預設值時,將直接進行運算;若提供的引數為兩個,則按提供的值來進行運算。
預設引數是為函式的一個或多個形式引數指定預設值。如果呼叫函式時沒有傳入相應的值,函式將使用此預設值,這樣可以避免呼叫時沒有引數的錯誤,使一些程式更加合理。如果傳入相應的引數,將替換預設值。
可變長度引數
先舉一個小栗子。
<?php function test(...$arr){ print_r($arr); } echo '<pre>'; test(1, 2, 3, 4); test(5, 6, 7, 8, 9, 10); ?>
輸出結果是
Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 ) Array ( [0] => 5 [1] => 6 [2] => 7 [3] => 8 [4] => 9 [5] => 10 )
這個例子可以很清晰的看到,兩次給函式提供的引數值不相同,但是觀察結果會發現輸入的數值都輸出了。我們看函式本身,發現它與普通函式有所不同,它新增了“...
”。這是可變長度引數的一大特點。
在 PHP 5.6 及以後的版本中,函式的形式引數可使用…來表示函式可接受一個可變數量的引數,可變引數將會被當作一個陣列傳遞給函式。
你想要的php知識都在這裡哦→
以上就是php函式之如何用預設引數和可變長度引數方式傳遞?的詳細內容,更多請關注php中文網其它相關文章!
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/818/viewspace-2827670/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- TypeScript 函式可選引數和預設引數TypeScript函式
- 遞迴函式,可變引數列表遞迴函式
- php函式引用傳遞引數的方法PHP函式
- PHP 函式可變數量的引數列表PHP函式變數
- JavaScript函式傳遞引數JavaScript函式
- 函式的引數傳遞函式
- Java方法04:命令列傳遞引數、可變引數Java命令列
- 函式作為引數傳遞函式
- 函式引數傳遞及返回函式
- Python3之函式的引數傳遞與引數定義Python函式
- 如何計算PHP函式中傳遞的引數數量PHP函式
- python函式變長引數Python函式
- 3.3.2 函式的預設引數和佔位引數 函式過載函式
- 『無為則無心』Python函式 — 29、Python變數和引數傳遞Python函式變數
- Go函式接收可變引數Go函式
- python中函式的引數傳遞Python函式
- golang學習之路之函式可變引數Golang函式
- vue事件帶預設引數,怎麼傳遞其他引數Vue事件
- Python的函式引數傳遞:傳值?引用?Python函式
- GO語言————6.3 傳遞變長引數Go
- Python語法—函式及引數傳遞Python函式
- 函式的呼叫方式和引數函式
- c#基礎-5.變長引數和引數預設值C#
- Day10 函式基礎+函式三種定義形式 + 函式的返回值、物件和引數 + 可變長引數函式物件
- 【C語言】函式的概念和函式的呼叫(引數傳遞)C語言函式
- 『無為則無心』Python函式 — 26、Python函式引數的傳遞方式Python函式
- 引數的定義和引數的傳遞
- C++引數的傳遞方式C++
- JavaScript為事件處理函式傳遞引數JavaScript事件函式
- 全網最適合入門的物件導向程式設計教程:48 Python函式方法與介面-位置引數、預設引數、可變引數和關鍵字引數物件程式設計Python函式
- 函式呼叫引數變數傳值的問題函式變數
- 引數傳遞
- python---函式引數、變數Python函式變數
- 引數傳遞方式必須是const引用傳遞
- python疑問5:位置引數,預設引數,可變引數,關鍵字引數,命名關鍵字引數區別Python
- java 傳遞引數的兩種方式Java
- 函式中引數傳值函式
- 引數傳遞機制之JWTJWT