Как передать переменное количество параметров функции в PHP

У меня есть этот многомерный массив (называемый $ values):

Array ( [0] => Array ( [0] => 5 [1] => 2 [2] => 5 [3] => 6 ) [1] => Array ( [0] => 3 [1] => 4 [2] => 5 [3] => 6 ) [2] => Array ( [0] => 1 [1] => 2 [2] => 4 [3] => 5 ) [3] => Array ( [0] => 9 [1] => 5 [2] => 3 [3] => 2 ) ) 

Я хочу рассчитать разницу между каждым элементом (массивом) этого многомерного массива с array_diff функции array_diff PHP. Первое, что я подумал, – разбить многомерный массив на одиночные массивы с помощью этого:

 for($cnt = 0; $cnt < count($values); $cnt++){ for($cntB = 0; $cntB < 4; $cntB++){ ${'arr'.$cnt}[] = $values[$cnt][$cntB]; } } 

После этого у меня есть несколько массивов, называемых $arr1 , $arr2 и т. Д. Поскольку размерность значений массива $values может меняться (и это будет), я не могу найти способ передать все сгенерированные одиночные массивы функции array_diff ,

Есть предположения?

Заранее спасибо.

Не уверен, что это то, что вы хотите, поскольку я не читал все это, но проверьте:

 call_user_func_array('array_diff', $values) 

Возможно, это то, что вы хотите.

 function diff() { $args = func_get_args(); // $args how has all the arrays you passed in. } 

Вместо

 ${'arr'.$cnt}[] = ... 

использование

 $arr[$cnt][] = ... 

Задача решена. 🙂

Нет необходимости в переменных переменных, когда то, что вы действительно ищете, – это массив.