php - foreach in foreach multiple dimensional
问题描述
I'd like to know how to avoid dupplicate of element while using a foreach in foreach with multidimensional array ?
The first level of my array can have several item (here's just 2, but maybe I can have 7 level). I've a lot trouble with this. Then this ID is going to be used as a parameter in a sql request, but this is another story.
This is my array :
Array
(
[0] => Array
(
[0] => Array
(
[id] => 10
)
[1] => Array
(
[id] => 11
)
[2] => Array
(
[id] => 12
)
)
[1] => Array
(
[0] => Array
(
[id] => 11
)
[1] => Array
(
[id] => 12
)
)
)
This is my foreach loop :
foreach($dataListe as $listeDiff){
foreach($listeDiff as $$item){
// echo $item[0].'<br />';
echo "<pre>".print_r($item, true)."</pre>";
}
}
Result :
Array
(
[id] => 10
)
Array
(
[id] => 11
)
Array
(
[id] => 12
)
Array
(
[id] => 11
)
Array
(
[id] => 12
)
Wanted :
Array
(
[id] => 10
)
Array
(
[id] => 11
)
Array
(
[id] => 12
)
解决方案
use array_unique()
$result = [];
foreach($dataListe as $listeDiff){
$result[] = $listeDiff;
}
$result = array_unique($result);
推荐阅读
- regex - 如何使用正则表达式格式化此 txt 文件中的前 7 行
- python - 如何使用第二个词典更新一个词典以获取两个词典之间的常用词?
- javascript - 如果ObjectB可能存在也可能不存在,如何检查ObjectA中的objectB中是否存在值
- asp.net-identity - 通过中间件管道播种数据库引发异常 asp.net core
- android - 当 Android 应用通过 Apollo 客户端发送请求时,GraphQL 服务器返回 422 错误
- java - Spring WebsecurityConfig 正在调用过滤器每个请求
- html - 高度为 100% 的 Flexbox 容器会破坏移动设备上的布局,但可以在移动设备大小的桌面浏览器上运行
- java - 无法使 JAR/WAR 可执行文件与嵌入式 Tomcat 7 一起工作
- presto - 从 Presto varchar 列解析 JSON 失败
- javascript - 使用 django 处理大型 jquery 数据表很慢