php如何数组合并但键名不变

这篇文章给大家分享的是有关php如何数组合并但键名不变的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

发展壮大离不开广大客户长期以来的信赖与支持,我们将始终秉承“诚信为本、服务至上”的服务理念,坚持“二合一”的优良服务模式,真诚服务每家企业,认真做好每个细节,不断完善自我,成就企业,实现共赢。行业涉及服务器租用等,在网站建设全网整合营销推广、WAP手机网站、VI设计、软件开发等项目上具有丰富的设计经验。

在php中,可以利用加号“+”来合并数组,具体语法格式“数组1+数组2”,这样数组合并且数组的键名不会重置。使用加号“+”合并两个数组,无论是普通数组还是键值对型数组,只要下标相同或者键相同,都是前者覆盖后者。

一般PHP中合并两个数组都会使用array_merge()

例如:

$data1 = ['111' => 'aaa', '222' => 'bbb', '333' => 'ccc'];
$data2 = ['444' => 'ddd', '555' => 'eee', '666' => 'fff'];
$data = array_merge($data1, $data2);
var_dump($data);

得到结果:

array(6) {
  [0]=>
  string(3) "aaa"
  [1]=>
  string(3) "bbb"
  [2]=>
  string(3) "ccc"
  [3]=>
  string(3) "ddd"
  [4]=>
  string(3) "eee"
  [5]=>
  string(3) "fff"
}

可以看到使用array_merge()会重置key值,如果key值对我们有用,不想重置,可以使用"+"合并数组。

$data1 = ['111' => 'aaa', '222' => 'bbb', '333' => 'ccc'];
$data2 = ['444' => 'ddd', '555' => 'eee', '666' => 'fff'];
$data = $data1 + $data2;
var_dump($data);

得到结果:

array(6) {
  [111]=>
  string(3) "aaa"
  [222]=>
  string(3) "bbb"
  [333]=>
  string(3) "ccc"
  [444]=>
  string(3) "ddd"
  [555]=>
  string(3) "eee"
  [666]=>
  string(3) "fff"
}

说明:

对于用"+"来合并两个数组而言,无论是普通数组还是键值对型数组,只要下标相同或者键相同,都是前者覆盖后者。这一点需要注意。

$arr1 = array(1, 2, 3, 4, 5);
$arr2 = array(1, 2, 6, 7, 8, 9, 10);
$result1 = $arr1 + $arr2;


$arr3 = array("name" => "itbsl", "age" => 13, "sex" => "Male");
$arr4 = array("name" => "火龙果", "age" => 13, "sex" => "Male", "id" => "411521");
$result2 = $arr3 + $arr4;

echo "
";
var_dump($result1);
var_dump($result2);

得到结果:

php如何数组合并但键名不变

感谢各位的阅读!关于“php如何数组合并但键名不变”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!


分享文章:php如何数组合并但键名不变
转载源于:http://hbruida.cn/article/jjgiod.html