我在此代码中遇到问题。我必须在计数大于0的表之间有交集。然后我使用函数array_interset()
但是当我使用条件来计算时我在这段代码中遇到了问题:
$iheb1 =
array_intersect(
if(count($tab0)>0) { $tab0, }
if(count($tab1)>0) { $tab1, }
if(count($tab2)>0) { $tab2, }
if(count($tab3)>0) { $tab3, }
if(count($tab4)>0) { $tab4, }
if(count($tab5)>0) { $tab5, }
if(count($tab6)>0) { $tab6 }
);
答案 0 :(得分:0)
这里有很多问题。最重要的是array_intersect参数中的if语句。
试试这个:
首先将所有数组添加到一个或多个数组(我使用$ full_array)。
$array_to_test = array();
foreach($full_array as $arr){
if(count($arr)>0){
array_push($array_to_test, $arr);
}
}
$iheb1 = array_reduce($array_to_test,function(&$a,$b) {$a = array_intersect($a,$b);},Array());
我找到了similar question,这似乎有效。