猿问

php 如何获取里面相同的项

$data=[
    "0"=>[1,2,3,4],
    "1"=>[2,3,4],
    "2"=>[1,3,4,6],
    "3"=>[1,4,5,7],
    "4"=>[1,4,3]
];
怎么获取这个二维数组中的数组都存在的值。

结果:4

要里面的数组都有这个值,才算。
斯蒂芬大帝
浏览 470回答 5
5回答

哆啦的时光机

$data=[ "0"=>[1,2,3,4], "1"=>[2,3,4], "2"=>[1,3,4,6], "3"=>[1,4,5,7], "4"=>[1,4,3] ]; $arr0 = $data[0]; foreach ($data as $key => $value) { $arr0 = array_intersect($arr0, $value); } var_dump($arr0);exit;

白衣染霜花

用php自带的函数啊,一行代码就搞定 array_intersect() 这个函数不考虑数组的键直接返回两个或多个数组的“值得交集” array_inersect_assoc 这个函数将键和值绑定,一起比较交集部分 array_intersect_key()函数是将两个数组的键值进行比较,返回键值交集的数组。

忽然笑

我就不写代码了,其实原理也很简单,你遍历一下,从头到尾让每个子数组跟下一个子数组做个交集运算,做到最后,就获得了你想要的共同元素。 探读
随时随地看视频慕课网APP
我要回答