在php中合并两个键控数组

我有两个键控数组,比如说

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

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

我需要以格式合并在一起

$c = [ 'Arvind' => 'Basu', 'Anjali' => 'Basu' ,'Rampal' => 'Singh', 'Roopashri' => 'Singh' ];

(基本上将两个数组附加在一起并根据姓氏排序)。

我尝试使用该array_merge函数来合并两个数组,但是,这似乎不起作用。


侃侃尔雅
浏览 92回答 2
2回答

江户川乱折腾

您的排序似乎比最初出现的要复杂一些。您想先按值排序,然后按键排序。你可以用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) {&nbsp; ["Anjali"]=> string(4) "Basu"&nbsp; ["Arvind"]=> string(4) "Basu"&nbsp; ["Rampal"]=> string(5) "Singh"&nbsp; ["Roopashri"]=> string(5) "Singh"}

素胚勾勒不出你

这应该做。这是一个示例。$a = [ 'Arvind' => 'Basu', 'Rampal' => 'Singh' ];$b = [ 'Anjali' => 'Basu', 'Roopashri' => 'Singh' ];$c = array_merge($a, $b);ksort($c);echo print_r($c);
打开App,查看更多内容
随时随地看视频慕课网APP