为了账号安全,请及时绑定邮箱和手机立即绑定

在php中合并两个键控数组

在php中合并两个键控数组

PHP
侃侃尔雅 2022-05-27 14:36:30
我有两个键控数组,比如说$a = [ 'Arvind' => 'Basu', 'Rampal' => 'Singh' ];和$b = [ 'Anjali' => 'Basu', 'Roopashri' => 'Singh' ];我需要以格式合并在一起$c = [ 'Arvind' => 'Basu', 'Anjali' => 'Basu' ,'Rampal' => 'Singh', 'Roopashri' => 'Singh' ];(基本上将两个数组附加在一起并根据姓氏排序)。我尝试使用该array_merge函数来合并两个数组,但是,这似乎不起作用。
查看完整描述

2 回答

?
江户川乱折腾

TA贡献1851条经验 获得超5个赞

您的排序似乎比最初出现的要复杂一些。您想先按值排序,然后按键排序。你可以用array_multisort这个。


<?php

$a = [ 'Arvind' => 'Basu', 'Rampal' => 'Singh' ];


$b = [ 'Anjali' => 'Basu', 'Roopashri' => 'Singh' ];


// You could also use `array_merge`. You should read about the differences.

// https://stackoverflow.com/a/7059731/296555

$c = $b + $a;


array_multisort(array_values($c), SORT_ASC, array_keys($c), SORT_ASC, $c);


var_dump($c);


array(4) {

  ["Anjali"]=> string(4) "Basu"

  ["Arvind"]=> string(4) "Basu"

  ["Rampal"]=> string(5) "Singh"

  ["Roopashri"]=> string(5) "Singh"

}


查看完整回答
反对 回复 2022-05-27
?
素胚勾勒不出你

TA贡献1827条经验 获得超9个赞

这应该做。这是一个示例。


$a = [ 'Arvind' => 'Basu', 'Rampal' => 'Singh' ];

$b = [ 'Anjali' => 'Basu', 'Roopashri' => 'Singh' ];


$c = array_merge($a, $b);

ksort($c);

echo print_r($c);


查看完整回答
反对 回复 2022-05-27
  • 2 回答
  • 0 关注
  • 91 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信