Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/opencv/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
php:array_uintersect,具有动态数组数_Php_Dynamic Arrays - Fatal编程技术网

php:array_uintersect,具有动态数组数

php:array_uintersect,具有动态数组数,php,dynamic-arrays,Php,Dynamic Arrays,我有一个foreach循环,它返回可变数量的数组 我需要使用自定义函数在它们之间运行array\u uintersect,以查找公共元素,但array\u uintersect仅接受3个参数(2个数组和函数) 这就是我现在拥有的: $all_freaktag_favorites = array(); foreach ($serie_preferite as $serie_preferita) { $preferite_elements = pods('category', $serie

我有一个
foreach
循环,它返回可变数量的数组

我需要使用自定义函数在它们之间运行
array\u uintersect
,以查找公共元素,但
array\u uintersect
仅接受3个参数(2个数组和函数)

这就是我现在拥有的:

$all_freaktag_favorites = array();

foreach ($serie_preferite as $serie_preferita) {
    $preferite_elements = pods('category', $serie_preferita['term_id']);
    $freaktag_preferita = $preferite_elements->field('freaktag');

    $all_freaktag_favorites[] = $freaktag_preferita;
}

function comparaFreaktag($tag1, $tag2) {
    return strcmp($tag1['term_id'], $tag2['term_id']);
};

$common_freaktag_between_favorites = array_uintersect(
    $all_freaktag_favorites[0],
    $all_freaktag_favorites[1],
    'comparaFreaktag'
);
这将正确地返回循环中前两个数组之间的交集,但我不知道如何使用未定义数量的数组来执行此操作


谢谢

将所有数组放入父数组并使用扩展运算符:

$all = [[/** xxx */, [/** xxx */], [/** xxx */], ...];

$all[] = 'comparaFreaktag';

$common_freaktag_between_favorites = array_uintersect(...$all);

谢谢@Marvin,我已经在将所有数组包装到
$all\u freaktag\u favorites[]
中,所以我将您的代码改为:
$common\u freaktag\u beforeign\u favorites=array\u uintersect(…$all\u freaktag\u favorites,'compareafreaktag')
但是这样做我得到了这个错误:
致命错误:在参数解包后不能使用位置参数
我编辑了我的答案,
标记
现在将被添加为
$all
数组的最后一个元素,函数检测何时给出了可调用的/字符串并将其作为最后一个参数。这里测试:抱歉打扰了,有没有办法返回重复次数最多的元素而不是确切的交点?最好打开一个新问题