先看一段程式碼
function concatenate($transform, ...$strings) { $string = ''; foreach($strings as $piece) { $string .= $piece; } return($transform($string)); } echo concatenate("strtoupper", "I'd ", "like ", 4 + 2, " apples");
函數定義的時候變數前使用... 操作符來表示這是一個可變參數,如果你傳遞了2個或更多的參數,那麼這些參數會被加到這個陣列。
Argument Unpacking
這個是和上面的功能相呼應的一個功能。
Variadic functions 允許你宣告傳入的參數數組,並且參數拆包允許你傳遞一個數組到一個函數,在函數內部自動解包,實例如下:
$email[] = "Hi there"; $email[] = "Thanks for registering, hope you like it"; mail("someone@example.com", ...$email);
你可以把所有的參數都弄一個陣列裡,PHP會為你處理好這一切:)
以上是php可變參數是什麼?的詳細內容。更多資訊請關注PHP中文網其他相關文章!