首页 > 解决方案 > 如果值相同,我想合并数组

问题描述

我正在尝试按时间值组合多个数组。我有一个这样的数组。我想合并 2 个数组,我使用 array_merge

Array_one :   
     [
           {
              date:"2018-06-23",
              size:"L",
              type:"shoes",
              value_one:"66"
           },
          {
              date:"2018-06-23",
              size:"XL",
              type:"shirt",
              value_one:"43"
           },
          {
              date:"2018-06-23",
              size:"M",
              type:"Bag",
              value_one:"23"
           }
        ]


Array_two :
[
   {
      date:"2018-06-23",
      size:"L",
      type:"shoes",
      value_two:"28"
   },
  {
      date:"2018-06-23",
      size:"XL",
      type:"shirt",
      value_two:"56"
   },
  {
      date:"2018-06-23",
      size:"M",
      type:"Bag",
      value_two:"14"
   },
  {
      date:"2018-06-23",
      size:"S",
      type:"Cap",
      value_two:"29"
   }
]

如果索引日期、大小相同,我需要将这 2 个数组与 y 值结合起来,键入它的合并。例如,组合后的数组应该是这样的。

Array_final :
    [
           {
              date:"2018-06-23",
              size:"L",
              type:"shoes",
              value_one:"66",
              value_two:"28"
           },
          {
              date:"2018-06-23",
              size:"XL",
              type:"shirt",
              value_one:"43",
              value_two:"56"
           },
          {
              date:"2018-06-23",
              size:"M",
              type:"Bag",
              value_one:"23",
              value_two:"14"
           },
           {
              date:"2018-06-23",
              size:"S",
              type:"Cap",
              value_one:"null",
              value_two:"29"
           }
        ]

这种情况我该怎么办?我想用 php、laravel 或集合“Laravel”类来解决这个问题。请帮我。

标签: phparrayslaravel

解决方案


尝试

    //both arrays will be merged including duplicates
    $result = array_merge( $array1, $array2 );
    //duplicate objects will be removed
    $result = array_map("unserialize", array_unique(array_map("serialize", $result)));
    //array is sorted on the bases of id
    sort( $result );

推荐阅读