訪問數組鍵時,是否有可能做這樣的事情:的指定一個範圍,在PHP
a_function_here($string[0...5]);
代替:
a_function_here($string[0], $string[1], $string[2], $string[3], $string[4], $string[5]);
我從來沒有使用過任何這樣的功能,我已經找遍對此有一些參考,但我一直無法遇到任何關於這個。
訪問數組鍵時,是否有可能做這樣的事情:的指定一個範圍,在PHP
a_function_here($string[0...5]);
代替:
a_function_here($string[0], $string[1], $string[2], $string[3], $string[4], $string[5]);
我從來沒有使用過任何這樣的功能,我已經找遍對此有一些參考,但我一直無法遇到任何關於這個。
你可以將一組參數傳遞給已知函數,例如call_user_func_array
例如
call_user_func_array('a_function_here', array_slice($string, 0, 6));
不需要特殊的語法$string[0...5]
。你只是想傳遞一個編號的數組$string
到功能的元素,所以你可以這樣做:
a_function_here($stringArr);
而且裏面的功能,你可以這樣做:
function a_function_here(array $stringArr) {
foreach ($stringArr as $str) {
# function logic here ...
}
...
return $result;
}
如OP所示,傳遞數組對於存在不同參數的現有函數不起作用。 – user2864740
@ user2864740:你不能修改該功能嗎? –
你能告訴*現實世界中使用的例子*?數組中包含* real *數據,而* real *函數代替'a_function_here'。我相信你正在尋找像「切片/應用」之類的東西,但是一個真實的例子*會澄清這一點。 – user2864740
這個問題解決了嗎? –