首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PHP显示数组相同的键具有多个值

PHP显示数组相同的键具有多个值
EN

Stack Overflow用户
提问于 2018-03-15 13:02:51
回答 1查看 65关注 0票数 0

我有两个数组,当数组相同的键时,我需要获取内容,我使用array_intersect_key获得相同的键,并返回以下结果:

代码语言:javascript
复制
Array1 :
(
[NewYork] = "5,NewYork";
[london] = "20,london";
[Pari] = "40,Pari";
)

Array2 :
(
[China] = "14,China";
[london] = "40,london";
[Tokyo] = "2,Tokyo";
)

结果

array_intersect_key(Array1,Array2); it返回:[london] = "20,london";

但我要向[london] = "20,london"; and [london] = "40,london";展示

或者像这样的[london] = "20,london|40,london";

没有循环,我有一个大文件

谢谢!

EN

回答 1

Stack Overflow用户

发布于 2018-03-15 13:38:43

嗨,我已经尝试了这段代码,以获得最接近的结果没有循环。这可能对你有帮助。

代码语言:javascript
复制
$array1['NewYork'] = "5,NewYork";
$array1['london'] = "20,london";
$array1['Tokyo'] = "40,Pari";


$array2['China'] = "14,China";
$array2['london'] = "40,london";
$array2['Tokyo'] = "2,Tokyo";


$res1 = array_intersect_key($array1,$array2);
$res2 = array_intersect_key($array2,$array1);

echo "<pre>";
print_r(array_merge_recursive($res1,$res2));
die;

结果

代码语言:javascript
复制
Array
(
    [london] => Array
        (
            [0] => 20,london
            [1] => 40,london
        )

    [Tokyo] => Array
        (
            [0] => 40,Pari
            [1] => 2,Tokyo
        )

)

如果有用的话请告诉我。祝好运。

更新

这个怎么样?它将返回相同的结果。

代码语言:javascript
复制
function myfunction($a,$b)
{
if ($a!=$b)
  {
  return 0;
  }
  return ($a>$b)?1:-1;
}
$array1['NewYork'] = "5,NewYork";
$array1['london'] = "20,london";
$array1['Tokyo'] = "40,Pari";


$array2['China'] = "14,China";
$array2['london'] = "40,london";
$array2['Tokyo'] = "2,Tokyo";

$res1 = array_merge_recursive($array1,$array2);
$res2 = array_uintersect_assoc($res1,$array1,"myfunction");

echo "<pre>";
print_r($res2);
die;
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49300194

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档