原生php结果集如何去重?

使用原生的php查询的结果集有重复的,去重的时候遇到了一些问题:

clipboard.png
下面是$row数字中的数据:
array(5) {
["coid"]=>
int(281)
["drid"]=>
int(84)
["drivername"]=>
string(9) "田明奇"
["drivetypetext"]=>
string(2) "B1"
["drivercompleteflag"]=>
int(0)
}
array(5) {
["coid"]=>
int(281)
["drid"]=>
int(84)
["drivername"]=>
string(9) "田明奇"
["drivetypetext"]=>
string(2) "B1"
["drivercompleteflag"]=>
int(0)
}
array(5) {
["coid"]=>
int(281)
["drid"]=>
int(752)
["drivername"]=>
string(6) "往来"
["drivetypetext"]=>
string(2) "A1"
["drivercompleteflag"]=>
int(0)
}
array(5) {
["coid"]=>
int(281)
["drid"]=>
int(755)
["drivername"]=>
string(6) "小小"
["drivetypetext"]=>
string(2) "C1"
["drivercompleteflag"]=>
int(0)
}
array(5) {
["coid"]=>
int(281)
["drid"]=>
int(759)
["drivername"]=>
string(12) "测试连续"
["drivetypetext"]=>
string(2) "A3"
["drivercompleteflag"]=>
int(0)
}
array(5) {
["coid"]=>
int(281)
["drid"]=>
int(760)
["drivername"]=>
string(8) "测试16"
["drivetypetext"]=>
string(2) "A1"
["drivercompleteflag"]=>
int(0)
}
array(5) {
["coid"]=>
int(281)
["drid"]=>
int(761)
["drivername"]=>
string(8) "测试17"
["drivetypetext"]=>
string(2) "B2"
["drivercompleteflag"]=>
int(0)
}
array(5) {
["coid"]=>
int(281)
["drid"]=>
int(765)
["drivername"]=>
string(2) "ls"
["drivetypetext"]=>
string(2) "A3"
["drivercompleteflag"]=>
int(0)
}
array(5) {
["coid"]=>
int(281)
["drid"]=>
int(768)
["drivername"]=>
string(3) "hjx"
["drivetypetext"]=>
string(2) "A1"
["drivercompleteflag"]=>
int(0)
}
array(5) {
["coid"]=>
int(281)
["drid"]=>
int(774)
["drivername"]=>
string(4) "yycc"
["drivetypetext"]=>
string(2) "A1"
["drivercompleteflag"]=>
int(0)
}
array(5) {
["coid"]=>
int(281)
["drid"]=>
int(775)
["drivername"]=>
string(6) "测试"
["drivetypetext"]=>
string(2) "A1"
["drivercompleteflag"]=>
int(0)
}
array(5) {
["coid"]=>
int(281)
["drid"]=>
int(776)
["drivername"]=>
string(3) "123"
["drivetypetext"]=>
string(2) "B1"
["drivercompleteflag"]=>
int(0)
}
array(5) {
["coid"]=>
int(281)
["drid"]=>
int(777)
["drivername"]=>
string(6) "王某"
["drivetypetext"]=>
string(2) "A1"
["drivercompleteflag"]=>
int(0)
}
array(5) {
["coid"]=>
int(281)
["drid"]=>
int(777)
["drivername"]=>
string(6) "王某"
["drivetypetext"]=>
string(2) "A1"
["drivercompleteflag"]=>
int(0)
}array(5) {
["coid"]=>
int(281)
["drid"]=>
int(84)
["drivername"]=>
string(9) "田明奇"
["drivetypetext"]=>
string(2) "B1"
["drivercompleteflag"]=>
int(0)
}
array(5) {
["coid"]=>
int(281)
["drid"]=>
int(84)
["drivername"]=>
string(9) "田明奇"
["drivetypetext"]=>
string(2) "B1"
["drivercompleteflag"]=>
int(0)
}
array(5) {
["coid"]=>
int(281)
["drid"]=>
int(752)
["drivername"]=>
string(6) "往来"
["drivetypetext"]=>
string(2) "A1"
["drivercompleteflag"]=>
int(0)
}
array(5) {
["coid"]=>
int(281)
["drid"]=>
int(755)
["drivername"]=>
string(6) "小小"
["drivetypetext"]=>
string(2) "C1"
["drivercompleteflag"]=>
int(0)
}
array(5) {
["coid"]=>
int(281)
["drid"]=>
int(759)
["drivername"]=>
string(12) "测试连续"
["drivetypetext"]=>
string(2) "A3"
["drivercompleteflag"]=>
int(0)
}
array(5) {
["coid"]=>
int(281)
["drid"]=>
int(760)
["drivername"]=>
string(8) "测试16"
["drivetypetext"]=>
string(2) "A1"
["drivercompleteflag"]=>
int(0)
}
array(5) {
["coid"]=>
int(281)
["drid"]=>
int(761)
["drivername"]=>
string(8) "测试17"
["drivetypetext"]=>
string(2) "B2"
["drivercompleteflag"]=>
int(0)
}
array(5) {
["coid"]=>
int(281)
["drid"]=>
int(765)
["drivername"]=>
string(2) "ls"
["drivetypetext"]=>
string(2) "A3"
["drivercompleteflag"]=>
int(0)
}
array(5) {
["coid"]=>
int(281)
["drid"]=>
int(768)
["drivername"]=>
string(3) "hjx"
["drivetypetext"]=>
string(2) "A1"
["drivercompleteflag"]=>
int(0)
}
array(5) {
["coid"]=>
int(281)
["drid"]=>
int(774)
["drivername"]=>
string(4) "yycc"
["drivetypetext"]=>
string(2) "A1"
["drivercompleteflag"]=>
int(0)
}
array(5) {
["coid"]=>
int(281)
["drid"]=>
int(775)
["drivername"]=>
string(6) "测试"
["drivetypetext"]=>
string(2) "A1"
["drivercompleteflag"]=>
int(0)
}
array(5) {
["coid"]=>
int(281)
["drid"]=>
int(776)
["drivername"]=>
string(3) "123"
["drivetypetext"]=>
string(2) "B1"
["drivercompleteflag"]=>
int(0)
}
array(5) {
["coid"]=>
int(281)
["drid"]=>
int(777)
["drivername"]=>
string(6) "王某"
["drivetypetext"]=>
string(2) "A1"
["drivercompleteflag"]=>
int(0)
}
array(5) {
["coid"]=>
int(281)
["drid"]=>
int(777)
["drivername"]=>
string(6) "王某"
["drivetypetext"]=>
string(2) "A1"
["drivercompleteflag"]=>
int(0)
}
如何把重复的过滤掉呀?

阅读 2.4k
2 个回答

clipboard.png
在sql查询中进行处理就ok了,distinct使用的时候必须放在开头,放在后面会出现错误。

你是这个意思???

/**
 * 二维数组按照指定键值去重
 * @param $arr 需要去重的二维数组
 * @param $key 需要去重所根据的索引
 * @return mixed
 */

function arr_uniq($arr,$key)
{

$key_arr = [];
foreach ($arr as $k => $v) {
    if (in_array($v[$key],$key_arr)) {
        unset($arr[$k]);
    } else {
        $key_arr[] = $v[$key];
    }
}
return $arr;

}

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题