如何使用数组合并合并具有重复键的数组?
How to merge an array with duplicate keys with array merge?
$cat1=array( "_id"=>new MongoId("562918fc2bad8c345d000029"),"name"=>"Category Two");
$cat2=array("_id"=>new MongoId("562918e62bad8c445d000029"),
"name"=>"Category One");
$categories=array();
$categories=array_merge($cat1,$cat2);
print_r($categories);
但它returns如下
array("_id"=>new MongoId("562918e62bad8c445d000029"),
"name"=>"Category One")
我也试过array_unique
array_unique(array_merge($cat1,$cat2))
但是结果和上面一样
我知道它不会合并两个数组,因为它们具有相同的数组键。
相反,它将第二个合并到第一个数组中,但是我怎样才能合并两个数组,所以它看起来像下面这样。
array(array( "_id"=>new MongoId("562918fc2bad8c345d000029"),"name"=>"Category Two"),array("_id"=>new MongoId("562918e62bad8c445d000029"),
"name"=>"Category One"));
看看实时代码
http://viper-7.com/Oaa4zL
您可以手动完成并将它们都添加到一个数组中:
print_r(array(
$cat1,
$cat2
));
如果你不知道会有多少类别,那么你可以简单地将它们推入数组。
$allCat = array();
$allCat[] = $cat1;
$allCat[] = $cat2;
.
.
.
$allCat[] = $catN;
print_r($allCat);
无需合并:
$categories[] = array("_id"=>new MongoId("562918fc2bad8c345d000029"),
"name"=>"Category Two");
$categories[] = array("_id"=>new MongoId("562918e62bad8c445d000029"),
"name"=>"Category One");
$cat1=array( "_id"=>new MongoId("562918fc2bad8c345d000029"),"name"=>"Category Two");
$cat2=array("_id"=>new MongoId("562918e62bad8c445d000029"),
"name"=>"Category One");
$categories=array();
$categories=array_merge($cat1,$cat2);
print_r($categories);
但它returns如下
array("_id"=>new MongoId("562918e62bad8c445d000029"),
"name"=>"Category One")
我也试过array_unique
array_unique(array_merge($cat1,$cat2))
但是结果和上面一样
我知道它不会合并两个数组,因为它们具有相同的数组键。
相反,它将第二个合并到第一个数组中,但是我怎样才能合并两个数组,所以它看起来像下面这样。
array(array( "_id"=>new MongoId("562918fc2bad8c345d000029"),"name"=>"Category Two"),array("_id"=>new MongoId("562918e62bad8c445d000029"),
"name"=>"Category One"));
看看实时代码 http://viper-7.com/Oaa4zL
您可以手动完成并将它们都添加到一个数组中:
print_r(array(
$cat1,
$cat2
));
如果你不知道会有多少类别,那么你可以简单地将它们推入数组。
$allCat = array();
$allCat[] = $cat1;
$allCat[] = $cat2;
.
.
.
$allCat[] = $catN;
print_r($allCat);
无需合并:
$categories[] = array("_id"=>new MongoId("562918fc2bad8c345d000029"),
"name"=>"Category Two");
$categories[] = array("_id"=>new MongoId("562918e62bad8c445d000029"),
"name"=>"Category One");