【发布时间】:2016-11-20 17:40:56
【问题描述】:
我需要这样调用一个函数:
function something($argument1, $argument2, $data)
其中 $data 可以是任意数量的以逗号分隔的变量: 1,2,3,4
所以例如我会打电话:
function something ('blue', 'green', 1,2,3)
或
function something ('red', 'black', 1,2,3,4,5,6,7,8,9)
我已经研究了省略号关键字 (...),但我看不出如何使用我的 2 个静态参数($argument1 和 $argument2)来实现它。
我的直觉是在调用函数并将数组发送给函数之前将逗号分隔成一个数组?
谢谢!
【问题讨论】:
-
你当然可以交出一个“东西”数组作为第三个参数。或者您使用具有可变参数号的函数的方法。这确实允许使用任意数量的参数,因此您必须实现自己的方法来确保确实移交了这两个强制性参数。
-
对于传递给函数的未知数量的参数,请使用数组。