当前位置:Gxlcms > PHP教程 > 二位数组根据数组中的某个值来取交集

二位数组根据数组中的某个值来取交集

时间:2021-07-01 10:21:17 帮助过:3人阅读

$a = [

  1. <code>['a' => 11,'b'=>1],
  2. ['a' => 11,'b'=>2],
  3. ['a' => 22,'b'=>3],
  4. ['a' => 22,'b'=>4],
  5. ['a' => 33,'b'=>5],
  6. ['a' => 33,'b'=>6],
  7. ['a' => 44,'b'=>7],
  8. ['a' => 44,'b'=>8],
  9. ['a' => 44,'b'=>9],
  10. ['a' => 55,'b'=>10],
  11. ['a' => 55,'b'=>11],
  12. ['a' => 66,'b'=>12],
  13. ['a' => 66,'b'=>13],</code>

];

比较二维数组的a键
去掉重复的。获取
$a = [

  1. <code>['a' => 11,'b'=>1],
  2. ['a' => 22,'b'=>3],
  3. ['a' => 33,'b'=>5],
  4. ['a' => 44,'b'=>7],
  5. ['a' => 55,'b'=>10],
  6. ['a' => 66,'b'=>12],</code>

];

回复内容:

$a = [

  1. <code>['a' => 11,'b'=>1],
  2. ['a' => 11,'b'=>2],
  3. ['a' => 22,'b'=>3],
  4. ['a' => 22,'b'=>4],
  5. ['a' => 33,'b'=>5],
  6. ['a' => 33,'b'=>6],
  7. ['a' => 44,'b'=>7],
  8. ['a' => 44,'b'=>8],
  9. ['a' => 44,'b'=>9],
  10. ['a' => 55,'b'=>10],
  11. ['a' => 55,'b'=>11],
  12. ['a' => 66,'b'=>12],
  13. ['a' => 66,'b'=>13],</code>

];

比较二维数组的a键
去掉重复的。获取
$a = [

  1. <code>['a' => 11,'b'=>1],
  2. ['a' => 22,'b'=>3],
  3. ['a' => 33,'b'=>5],
  4. ['a' => 44,'b'=>7],
  5. ['a' => 55,'b'=>10],
  6. ['a' => 66,'b'=>12],</code>

];

哦自己找到答案了,求效率更好的方法

  1. <code>function assoc_unique(&$arr, $key)
  2. {
  3. $rAr=array();
  4. for($i=0;$i<count($arr);$i++) {="" if(!isset($rar[$arr[$i][$key]]))="" $rar[$arr[$i][$key]]="$arr[$i];" }="" $arr="array_values($rAr);" assoc_unique($a,'a');<="" code=""></count($arr);$i++)></code>

人气教程排行