ABC001.001
ABC001.003
ABC001.004
ABC002.001
ABC002.002
ABC001N.001
ABC002N.002
ABC511.001
ABC511.002
CHH512.001
CHH620N.001
CHH620N.002
CHH621N.001
如何把上面这些数据,打印成如下
array ( [0] => ABC001 ,array([0]=>ABC001.001, 1=>ABC001.003,2=>ABC001.004,array([0]=>001, 1=>003,2=>004)) 
array ( [0] => ABC002 ,array([0]=>ABC002.001, 1=>ABC002.002,array([0]=>001, 1=>002)) 等等

解决方案 »

  1.   

    $arr=array(
    'ABC001.001',
    'ABC001.003',
    'ABC001.004',
    'ABC002.001',
    'ABC002.002',
    'ABC001N.001',
    'ABC002N.002',
    'ABC511.001',
    'ABC511.002',
    'CHH512.001',
    'CHH620N.001',
    'CHH620N.002',
    'CHH621N.001',
    );$leibieArr=array();
    $resultArr=array();
    foreach ($arr as $key=>$value){
    $leibie=explode('.', $value);
    if(!key_exists($leibie[0], $leibieArr)){
    $leibieArr[$leibie[0]]=array();
    }
    $leibieArr[$leibie[0]]['x'][]=$leibie[1];
    $leibieArr[$leibie[0]]['d'][]=$value;
    }
    //print_r($leibieArr);foreach ($leibieArr as $key=>$value){
    $resultArr[$key]=array(
    $key,
    $value['d'],
    $value['x']
    );
    }
    print_r($resultArr);