• 技术文章 >后端开发 >php教程

    php数组实现根据某个键值将相同键值合并生成新二维数组的方法详解

    墨辰丷墨辰丷2018-05-23 14:56:28原创847
    这篇文章主要介绍了php数组实现根据某个键值将相同键值合并生成新二维数组的方法,涉及php数组的遍历、赋值相关运算技巧,需要的朋友可以参考下

    本文实例讲述了php数组实现根据某个键值将相同键值合并生成新二维数组的方法。分享给大家供大家参考,具体如下:

    源数据:

    $infos = array(
      array(
        'a' => 36,
        'b' => 'xa',
        'c' => '2015-08-28 00:00:00',
        'd' => '2015/08/438488a00b3219929282e3652061c2e3.png'
      ),
      array(
        'a' => 3,
        'b' => 'vd',
        'c' => '2015-08-20 00:00:00',
        'd' => '2015/08/438488a00b3219929282e3652061c2e3.png'
      ),
      array(
        'a' => 6,
        'b' => 'wwe',
        'c' => '2015-08-28 00:00:00',
        'd' => '2015/08/438488a00b3219929282e3652061c2e3.png'
      ),
      array(
        'a' => 36,
        'b' => 'se',
        'c' => '2015-08-28 00:00:00',
        'd' => '2015/08/438488a00b3219929282e3652061c2e3.png'
      ),
      array(
        'a' => 6,
        'b' => 'aw',
        'c' => '2015-08-28 00:00:00',
        'd' => '2015/08/438488a00b3219929282e3652061c2e3.png'
      ),
      array(
        'a' => 36,
        'b' => 'bv',
        'c' => '2015-08-28 00:00:00',
        'd' => '2015/08/438488a00b3219929282e3652061c2e3.png'
      ),
      array(
        'a' => 12,
        'b' => 'xx',
        'c' => '2015-08-27 00:00:00',
        'd' => '2015/08/438488a00b3219929282e3652061c2e3.png'
      )
    );

    处理要求:将数组中a相同的二维数组合并到一个数组中,生成一个新的数组

    代码:

    <?php
     $result= array();
     foreach ($infos as $key => $info) {
      $result[$info['a']][] = $info;
     }
     print_r($result);

    输出:

    Array
    (
     [36] => Array
      (
       [0] => Array
        (
         [a] => 36
         [b] => xa
         [c] => 2015-08-28 00:00:00
         [d] => 2015/08/438488a00b3219929282e3652061c2e3.png
        )
       [1] => Array
        (
         [a] => 36
         [b] => se
         [c] => 2015-08-28 00:00:00
         [d] => 2015/08/438488a00b3219929282e3652061c2e3.png
        )
       [2] => Array
        (
         [a] => 36
         [b] => bv
         [c] => 2015-08-28 00:00:00
         [d] => 2015/08/438488a00b3219929282e3652061c2e3.png
        )
      )
     [3] => Array
      (
       [0] => Array
        (
         [a] => 3
         [b] => vd
         [c] => 2015-08-20 00:00:00
         [d] => 2015/08/438488a00b3219929282e3652061c2e3.png
        )
      )
     [6] => Array
      (
       [0] => Array
        (
         [a] => 6
         [b] => wwe
         [c] => 2015-08-28 00:00:00
         [d] => 2015/08/438488a00b3219929282e3652061c2e3.png
        )
       [1] => Array
        (
         [a] => 6
         [b] => aw
         [c] => 2015-08-28 00:00:00
         [d] => 2015/08/438488a00b3219929282e3652061c2e3.png
        )
      )
     [12] => Array
      (
       [0] => Array
        (
         [a] => 12
         [b] => xx
         [c] => 2015-08-27 00:00:00
         [d] => 2015/08/438488a00b3219929282e3652061c2e3.png
        )
      )
    )

    以上就是本文的全部内容,希望对大家的学习有所帮助。


    相关推荐:

    PHP在线调试执行的实现方法(附demo源码)_php技巧

    php实现按天数、星期、月份查询的搜索框_php技巧

    PHP实现的进度条效果详解_php技巧

    以上就是php数组实现根据某个键值将相同键值合并生成新二维数组的方法详解的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:php 键值 某个
    上一篇:PHP实现计算日期间隔天数的方法 下一篇:PHP使用imagick扩展实现合并图像的方法详解
    PHP编程就业班

    相关文章推荐

    • 聊聊Nginx与php-fpm的通信机制,看看如何配置?• php数组的简单有关问题• thinkphp的select跟find的区别• 框架VS自已!想问一下子自已写程序运行效率是不是没有框架高• 对编译原理有兴趣的进,该怎么处理

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网