php合并数组并保留键值的方法

php合并数组并保留键值的方法
例子1,数组使用字符串键名,相同的键名会被后面的覆盖
<pre>
<?php
$arr1 = array(‘name‘=>‘fdipzone‘);
$arr2 = array(‘name‘=>‘terry‘);

$result = array_merge($arr1, $arr2);

print_r($result);
?>
</pre>
输出:
<pre>
Array
(
[name] => terry
)
</pre>
例子2,数组使用数字键名,键名相同不会覆盖,且键名会重新索引
<pre>
<?php
$arr1 = array(0=>‘fdipzone‘,1=>‘terry‘);
$arr2 = array(0=>‘php‘,1=>‘python‘);

$result = array_merge($arr1, $arr2);

print_r($result);
?>
</pre>
输出:
<pre>
Array
(
[0] => fdipzone
[1] => terry
[2] => php
[3] => python
)
</pre>
使用array_merge合并两部分答案
<pre>
<?php
$form_data1 = array(11=>‘A‘,12=>‘B‘,13=>‘C‘,14=>‘D‘);
$form_data2 = array(25=>‘B‘,26=>‘A‘,27=>‘D‘,28=>‘C‘);

$result = array_merge($form_data1, $form_data2);

print_r($result);
?>
</pre>
输出
<pre>
Array
(
[0] => A
[1] => B
[2] => C
[3] => D
[4] => B
[5] => A
[6] => D
[7] => C
)
</pre>
合并数组并保留键值的方法:
<pre>
<?php
$form_data1 = array(11=>‘A‘,12=>‘B‘,13=>‘C‘,14=>‘D‘);
$form_data2 = array(25=>‘B‘,26=>‘A‘,27=>‘D‘,28=>‘C‘);

$result = $form_data1 + $form_data2;

print_r($result);
?>
</pre>
输出:
<pre>
Array
(
[11] => A
[12] => B
[13] => C
[14] => D
[25] => B
[26] => A
[27] => D
[28] => C
)
</pre>
使用 “+” 运算符合并数组,可以保留数组的键值,如果合并的数组中含有相同的键值,后面的不会覆盖前面的键值(前面的优先)。 ps:这个仅仅针对 索引为数字的时候

原文地址:https://www.cnblogs.com/newmiracle/p/11865353.html

时间: 2024-10-11 05:43:54

php合并数组并保留键值的方法的相关文章

实现对多维数组按照某个键值排序的两种方法(array_multisort和array_sort)

实现对多维数组按照某个键值排序的两种解决方法(array_multisort和array_sort): 第一种:array_multisort()函数对多个数组或多维数组进行排序. //对数组$hotcat按照count键值大小降序进行排序: $hotcat =array( array('1501'=>array('catid'=>'1546','catname'=>'续梦PHP 一级','count'=>'588')), array('1501'=>array('catid

PHP如何根据数组中的键值进行排序

主要是使用PHP的排序函数,asort()和arsort(). 为了减少代码的耦合性,我们将根据数组中的键值进行排序封装成一个函数 1 <?php 2 $array = array( 3 array('name'=>'aa','price'=>1050), 4 array('name'=>'bb','price'=>4300), 5 array('name'=>'cc','price'=>3100), 6 array('name'=>'dd','price'

PHP编程实现多维数组按照某个键值排序的方法

1.array_multisort()函数对多个数组或多维数组进行排序. //对数组$hotcat按照count键值大小降序进行排序: $hotcat =array(  array('1501'=>array('catid'=>'1546','catname'=>'数组排序 一级','count'=>'588')),  array('1501'=>array('catid'=>'1546','catname'=>'数组排序二级','count'=>'588'

NSMutableDictionary 类中增加键值对方法分析

在iOS中可变字典增加一个键值对的方法有setObject: forKey: 和setValue : forKey: .为了方便我们把这两个方法简称为方法A和方法B. B这个方法中其中的value值是不能为nil,否则程序会出项崩溃.而A方法中的这个value可以为nil,但是当这个value位nil时,系统会自动调用removeObjectforKey:这个方法.这样就把这个键值对删除掉了.B方法中的key值可以是任意类型的,但是这个类型必须要实现NSCopying协议.而A方法中它的key值

数组里边根据键值进行合并处理

<script> var examViewList = [{ "examItemIds" : 221, "timePoint" : "20" }, { "examItemIds" : 240, "timePoint" : "40" }, { "examItemIds" : 221, "timePoint" : "30"

有关合并某一字段键值相同的数组的改进

/** **关于参数的说明 **$key键值相同的键名 **$array代表原数组 **$start代表$array[0][$key] **$newkey代表相同键值相同的键名 **/ function combine_same_val($array,$start,$key,$newkey){ static $new; foreach($array as $k=>$v){ if($v[$key]==$start){ $new[$v[$newkey]][] = $v; unset($array[$

php 二位数组按某个键值排序

$arr=[ array( 'name'=>'小坏龙', 'age'=>28 ), array( 'name'=>'小坏龙2', 'age'=>14 ), array( 'name'=>'小坏龙3', 'age'=>59 ), array( 'name'=>'小坏龙4', 'age'=>23 ), array( 'name'=>'小坏龙5', 'age'=>23 ), array( 'name'=>'小坏龙6', 'age'=>21

php之PDOStatement::execute数组参数带有键值会出错

当预处理的SQL语句是用问号占位符时,如果是用数组传参的,数组里不要带有键值,否则无法执行SQL. 出错的代码如下: $test = new PDODB(); $param=["d"=>"2020-1-13","e"=>2,"f"=>2,"g"=>2]; $sql1 = "insert into hk49x7_bns (killmode,killmodecode,fensh

php数组根据某键值,把相同键值的合并最终生成一个新的二维数组

要处理的PHP数组: $infos = array(         array(         'gid' => 36,         'name' => '高二佳木斯',                  'start_time' => '2015-08-28 00:00:00',                    'pic' => '2015/08/438488a00b3219929282e3652061c2e3.png'