Heim  >  Artikel  >  Backend-Entwicklung  >  数组合并问题(已更新)

数组合并问题(已更新)

WBOY
WBOYOriginal
2016-06-23 13:59:21796Durchsuche

array (  0 =>   array (    'cust_no' => '237109S92B',    'hi_no' => 'MEC38-431',    'arr_time' => '30/03/2014  9:00',    'totals' => 15,    'ch_date' => '26/03/2014  0:00',    'snp' => 15,    'mount' => 1,    'c_type' => 'D22',  ),  1 =>   array (    'cust_no' => '237109S92B',    'hi_no' => 'MEC38-431',    'arr_time' => '30/03/2014  9:00',    'totals' => 15,    'ch_date' => '26/03/2014  0:00',    'snp' => 15,    'mount' => 1,    'c_type' => 'D22',  ),  2 =>   array (    'cust_no' => '237033AW0A',    'hi_no' => 'BEM330-500',    'arr_time' => '30/03/2014 19:00',    'totals' => 15,    'ch_date' => '26/03/2014  0:00',    'snp' => 15,    'mount' => 1,    'c_type' => 'X11M',  ),  3 =>   array (    'cust_no' => '237033AW0A',    'hi_no' => 'BEM330-500',    'arr_time' => '30/03/2014 19:00',    'totals' => 45,    'ch_date' => '26/03/2014  0:00',    'snp' => 15,    'mount' => 3,    'c_type' => 'X11M',  ),  4 =>   array (    'cust_no' => '237033AW0A',    'hi_no' => 'BEM330-500',    'arr_time' => '30/03/2014 19:00',    'totals' => 45,    'ch_date' => '26/03/2014  0:00',    'snp' => 15,    'mount' => 3,    'c_type' => 'X11M',  ), 5 =>   array (    'cust_no' => '237033AW0A',    'hi_no' => 'BEM330-500',    'arr_time' => '1/04/2014 19:00',    'totals' => 45,    'ch_date' => '26/03/2014  0:00',    'snp' => 15,    'mount' => 3,    'c_type' => 'X11M',  ),)



条件:当arr_time和c_type,snp都相同时,把条件相同的数组合并为新的二维数组,并设定日期形式yyyy-mm-dd_$i为其序号。变成例如  
array (  0 =>   array (    'no'=> '2014-04-08_1',    'cust_no' => '237109S92B',    'hi_no' => 'MEC38-431',    'arr_time' => '30/03/2014  9:00',    'totals' => 15,    'ch_date' => '26/03/2014  0:00',    'snp' => 15,    'mount' => 1,    'c_type' => 'D22',  ),  1 =>   array (    'no'=> '2014-04-08_1',    'cust_no' => '237109S92B',    'hi_no' => 'MEC38-431',    'arr_time' => '30/03/2014  9:00',    'totals' => 15,    'ch_date' => '26/03/2014  0:00',    'snp' => 15,    'mount' => 1,    'c_type' => 'D22',  ),)

请问怎么求解?


回复讨论(解决方案)

$res = array();foreach($ar as $t) {  $k = join('_', array($t['arr_time'], $t['c_type'], $t['snp']));  $res[$k][] = $t;}print_r($res);
Array(    [30/03/2014  9:00_D22_15] => Array        (            [0] => Array                (                    [cust_no] => 237109S92B                    [hi_no] => MEC38-431                    [arr_time] => 30/03/2014  9:00                    [totals] => 15                    [ch_date] => 26/03/2014  0:00                    [snp] => 15                    [mount] => 1                    [c_type] => D22                )            [1] => Array                (                    [cust_no] => 237109S92B                    [hi_no] => MEC38-431                    [arr_time] => 30/03/2014  9:00                    [totals] => 15                    [ch_date] => 26/03/2014  0:00                    [snp] => 15                    [mount] => 1                    [c_type] => D22                )        )    [30/03/2014 19:00_X11M_15] => Array        (            [0] => Array                (                    [cust_no] => 237033AW0A                    [hi_no] => BEM330-500                    [arr_time] => 30/03/2014 19:00                    [totals] => 15                    [ch_date] => 26/03/2014  0:00                    [snp] => 15                    [mount] => 1                    [c_type] => X11M                )            [1] => Array                (                    [cust_no] => 237033AW0A                    [hi_no] => BEM330-500                    [arr_time] => 30/03/2014 19:00                    [totals] => 45                    [ch_date] => 26/03/2014  0:00                    [snp] => 15                    [mount] => 3                    [c_type] => X11M                )            [2] => Array                (                    [cust_no] => 237033AW0A                    [hi_no] => BEM330-500                    [arr_time] => 30/03/2014 19:00                    [totals] => 45                    [ch_date] => 26/03/2014  0:00                    [snp] => 15                    [mount] => 3                    [c_type] => X11M                )        )    [1/04/2014 19:00_X11M_15] => Array        (            [0] => Array                (                    [cust_no] => 237033AW0A                    [hi_no] => BEM330-500                    [arr_time] => 1/04/2014 19:00                    [totals] => 45                    [ch_date] => 26/03/2014  0:00                    [snp] => 15                    [mount] => 3                    [c_type] => X11M                )        ))
接下来该怎么做,你应该会的

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn