php - 在php的多维数组中检查一个值是否重复并且另一列是否不同?
问题描述
我有这样的多维数组。
array:8 [
0 => array:8 [
"SERIAL" => "qwerty"
"BRANCH" => "TEST1"
]
1 => array:8 [
"SERIAL" => "qwer"
"BRANCH" => "TEST1"
]
2 => array:8 [ // RETURN THIS AS ERROR AS THE BRANCH "TEST1" has already "qwerty" serial
"SERIAL" => "qwerty"
"BRANCH" => "TEST2"
]
3 => array:8 [
"SERIAL" => "qwerty"
"BRANCH" => "TEST1"
]
]
如果“SERIAL”和不同的“BRANCH”值重复,我的目标是返回错误。
知道如何实现这一目标吗?
解决方案
一种选择是使用 2 个 foreach 循环并检查 SERIAL 是否相同而 BRANCH 是否不同。
如果是这种情况,请跳出循环或相应地处理它。
foreach ($arrays as $arrayA) {
foreach ($arrays as $arrayB) {
if ($arrayA["SERIAL"] == $arrayB["SERIAL"] && $arrayA["BRANCH"] !== $arrayB["BRANCH"]) {
print_r($arrayB);
break 2;
}
}
}
看一个php 演示
推荐阅读
- python - 如何在python中安全地解压dict?
- fft - 非均匀网格的 3d 傅立叶逆变换
- sql - 基于其他行删除行并合并剩余行
- r - 使用 R 中的 mailr 包将文本消息和 html 表都作为消息正文发送
- c# - UWP Microsoft Graph 订阅通知 URL 响应
- php - PHP header('location: mypage.php') vs header('location: mypage.php')
- angular - Angular 6 mathjax 不工作
- go - 使用 gorm 自动预加载无法按预期工作
- java - 无法在 sqlite 中找到列
- javascript - ngForm 引用变量在 ng-template 中返回未定义