2个数组://数组a
array (
  'SU13080800340' => 
  array (
    0 => 'CVT121015001',
    1 => 'CVT121015002',
    2 => 'CVT121226001',
  ),
)
//数组b
array (
  'stock_no' => 'SU13080800340',
  'adress' => 'B',
  'arr_time' => '2013-08-14 09:00:00',
  'c_type' => 'P32E',
  'cust_no' => '310F61VA5A',
  'mount_total' => '3',
  'total' => '48',
  'c1_time' => '2013-08-10 15:00:00',
)
求达到合并的效果:array (
'0' =>
array (
  'stock_no' => 'SU13080800340',
  'adress' => 'B',
  'arr_time' => '2013-08-14 09:00:00',
  'c_type' => 'P32E',
  'cust_no' => '310F61VA5A',
  'mount_total' => '3',
  'total' => '48',
  'c1_time' => '2013-08-10 15:00:00',
  'packageno' => 'CVT121015001',
),
'1' =>
array (
  'stock_no' => 'SU13080800340',
  'adress' => 'B',
  'arr_time' => '2013-08-14 09:00:00',
  'c_type' => 'P32E',
  'cust_no' => '310F61VA5A',
  'mount_total' => '3',
  'total' => '48',
  'c1_time' => '2013-08-10 15:00:00',
  'packageno' => 'CVT121015002',
),
'2' =>
array (
  'stock_no' => 'SU13080800340',
  'adress' => 'B',
  'arr_time' => '2013-08-14 09:00:00',
  'c_type' => 'P32E',
  'cust_no' => '310F61VA5A',
  'mount_total' => '3',
  'total' => '48',
  'c1_time' => '2013-08-10 15:00:00',
  'packageno' => 'CVT121016001',
),
)

解决方案 »

  1.   

    楼主你应该更明确的描述你的需求如果仅仅是按照你的样例来写代码,扩展起来可能又会出现问题按照你的样例,可以这么写://数组a
    $a = array (
      'SU13080800340' => 
      array (
        0 => 'CVT121015001',
        1 => 'CVT121015002',
        2 => 'CVT121226001'
      )
    );
    //数组b
    $b = array (
      'stock_no' => 'SU13080800340',
      'adress' => 'B',
      'arr_time' => '2013-08-14 09:00:00',
      'c_type' => 'P32E',
      'cust_no' => '310F61VA5A',
      'mount_total' => '3',
      'total' => '48',
      'c1_time' => '2013-08-10 15:00:00'
    );$res = array();
    foreach($a['SU13080800340'] as $key=>$each){
    $res[] = $b;
    $res[$key]['packageno'] = $each;
    }var_export($res);
    结果:array (
      0 => 
      array (
        'stock_no' => 'SU13080800340',
        'adress' => 'B',
        'arr_time' => '2013-08-14 09:00:00',
        'c_type' => 'P32E',
        'cust_no' => '310F61VA5A',
        'mount_total' => '3',
        'total' => '48',
        'c1_time' => '2013-08-10 15:00:00',
        'packageno' => 'CVT121015001',
      ),
      1 => 
      array (
        'stock_no' => 'SU13080800340',
        'adress' => 'B',
        'arr_time' => '2013-08-14 09:00:00',
        'c_type' => 'P32E',
        'cust_no' => '310F61VA5A',
        'mount_total' => '3',
        'total' => '48',
        'c1_time' => '2013-08-10 15:00:00',
        'packageno' => 'CVT121015002',
      ),
      2 => 
      array (
        'stock_no' => 'SU13080800340',
        'adress' => 'B',
        'arr_time' => '2013-08-14 09:00:00',
        'c_type' => 'P32E',
        'cust_no' => '310F61VA5A',
        'mount_total' => '3',
        'total' => '48',
        'c1_time' => '2013-08-10 15:00:00',
        'packageno' => 'CVT121226001',
      ),
    )
      

  2.   

    我看了下数据结构,stockno对应的packageno的结果如数组a所示,数组b是数据表按照cust_no进行group by,例子更新下://数组a
    array (
      'SU13080800340' => 
      array (
        0 => 'CVT121015001',
        1 => 'CVT121015002',
        2 => 'CVT121226001',
      ),
    )
    //数组b
    array (
    '0' =>
    array (
      'stock_no' => 'SU13080800340',
      'adress' => 'B',
      'arr_time' => '2013-08-14 09:00:00',
      'c_type' => 'P32E',
      'cust_no' => '310F61VA5A',
      'mount_total' => '1',
      'total' => '16',
      'c1_time' => '2013-08-10 15:00:00',
    ),
    '1' =>
    array (
      'stock_no' => 'SU13080800340',
      'adress' => 'B',
      'arr_time' => '2013-08-14 09:00:00',
      'c_type' => 'P32E',
      'cust_no' => '310F61VA5B',
      'mount_total' => '2',
      'total' => '32',
      'c1_time' => '2013-08-10 15:00:00',
    ),
    )
    求达到合并的效果:array (
    '0' =>
    array (
      'stock_no' => 'SU13080800340',
      'adress' => 'B',
      'arr_time' => '2013-08-14 09:00:00',
      'c_type' => 'P32E',
      'cust_no' => '310F61VA5A',
      'mount_total' => '1',
      'total' => '16',
      'c1_time' => '2013-08-10 15:00:00',
      'packageno' => 'CVT121015001',
    ),
    '1' =>
    array (
      'stock_no' => 'SU13080800340',
      'adress' => 'B',
      'arr_time' => '2013-08-14 09:00:00',
      'c_type' => 'P32E',
      'cust_no' => '310F61VA5A',
      'mount_total' => '2',
      'total' => '32',
      'c1_time' => '2013-08-10 15:00:00',
      'packageno' => 'CVT121015002',
    ),
    '2' =>
    array (
      'stock_no' => 'SU13080800340',
      'adress' => 'B',
      'arr_time' => '2013-08-14 09:00:00',
      'c_type' => 'P32E',
      'cust_no' => '310F61VA5A',
      'mount_total' => '2',
      'total' => '32',
      'c1_time' => '2013-08-10 15:00:00',
      'packageno' => 'CVT121016001',
    ),
    )
      

  3.   

    //数组a
    $a = array (
      'SU13080800340' => 
      array (
        0 => 'CVT121015001',
        1 => 'CVT121015002',
        2 => 'CVT121226001',
      ),
    );
    //数组b
    $b = array (
    '0' =>
    array (
      'stock_no' => 'SU13080800340',
      'adress' => 'B',
      'arr_time' => '2013-08-14 09:00:00',
      'c_type' => 'P32E',
      'cust_no' => '310F61VA5A',
      'mount_total' => '1',
      'total' => '16',
      'c1_time' => '2013-08-10 15:00:00',
    ),
    '1' =>
    array (
      'stock_no' => 'SU13080800340',
      'adress' => 'B',
      'arr_time' => '2013-08-14 09:00:00',
      'c_type' => 'P32E',
      'cust_no' => '310F61VA5B',
      'mount_total' => '2',
      'total' => '32',
      'c1_time' => '2013-08-10 15:00:00',
    ),
    );foreach($b as $item) {
      for($i=0; $i<$item['mount_total']; $i++) {
        $item['packageno'] = current(array_splice($a[$item['stock_no']], 0, 1));
        $res[] = $item;
      }
    }
    var_export($res);得array (
      0 => 
      array (
        'stock_no' => 'SU13080800340',
        'adress' => 'B',
        'arr_time' => '2013-08-14 09:00:00',
        'c_type' => 'P32E',
        'cust_no' => '310F61VA5A',
        'mount_total' => '1',
        'total' => '16',
        'c1_time' => '2013-08-10 15:00:00',
        'packageno' => 'CVT121015001',
      ),
      1 => 
      array (
        'stock_no' => 'SU13080800340',
        'adress' => 'B',
        'arr_time' => '2013-08-14 09:00:00',
        'c_type' => 'P32E',
        'cust_no' => '310F61VA5B',
        'mount_total' => '2',
        'total' => '32',
        'c1_time' => '2013-08-10 15:00:00',
        'packageno' => 'CVT121015002',
      ),
      2 => 
      array (
        'stock_no' => 'SU13080800340',
        'adress' => 'B',
        'arr_time' => '2013-08-14 09:00:00',
        'c_type' => 'P32E',
        'cust_no' => '310F61VA5B',
        'mount_total' => '2',
        'total' => '32',
        'c1_time' => '2013-08-10 15:00:00',
        'packageno' => 'CVT121226001',
      ),
    )