當呼叫具有可變數量參數的PHP 函數
處理接受可變數量參數的PHP 函數時,參數數量傳遞給函數的參數可以根據數組的長度來決定。為了實現這一點,PHP 提供了幾種技術:
call_user_func_array
如果參數儲存在陣列中,則可以使用 call_user_func_array 函數。此函數接受一個陣列作為其第二個參數,其中包含函數參數。
範例:
function test() { var_dump(func_num_args()); var_dump(func_get_args()); } $params = [ 10, 'glop', 'test', ]; call_user_func_array('test', $params);
此程式碼將輸出:
int 3 array 0 => int 10 1 => string 'glop' (length=4) 2 => string 'test' (length=4)
for 循環
for循環另一個選擇是使用for 迴圈迭代數組並將每個元素作為參數傳遞給函數。
function test($num1, $str1, $str2) { var_dump(func_get_args()); } $params = [ 10, 'glop', 'test', ]; for ($i = 0; $i < count($params); $i++) { test($params[$i]); }範例:
array(1) { [0] => int 10 } array(1) { [0] => string 'glop' (length=4) } array(1) { [0] => string 'test' (length=4) }
此程式碼將輸出:
透過利用這些技術,您可以根據參數的長度有效地呼叫具有可變數量參數的PHP 函數。一個數組。以上是如何使用可變數量的參數呼叫 PHP 函數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!