示范数组如下所示:Array
        (
            [8] => .icon-48-alarms 
            [14] => .icon-16-alarms
            [17] => .icon-16-alarms
            [21] => .icon-16-alarms
            [24] => .icon-new-alarms
            [27] => .icon-new-alarms
        )
想请高手写一个算法,得到的结果如下
8 =>.icon-48-alarms 
14,17,21 => .icon-16-alarms
24,47 => .icon-new-alarms小弟在线等了...

解决方案 »

  1.   

    $arr = array(8 => '.icon-48-alarms', 
    14 => '.icon-16-alarms', 
    17 => '.icon-16-alarms', 
    21 => '.icon-16-alarms', 
    24 => '.icon-new-alarms', 
    27 => '.icon-new-alarms');
    $arr = array_unique($arr);
    echo '<pre>';print_r($arr);
      

  2.   


    <?php 
    $arr = array(8 => '.icon-48-alarms', 
                14 => '.icon-16-alarms', 
                17 => '.icon-16-alarms', 
                21 => '.icon-16-alarms', 
                24 => '.icon-new-alarms', 
                27 => '.icon-new-alarms'
    );
    $out_arr = array();
    foreach($arr as $key=>$val)
    {
    if ($search_key = array_search($val,$out_arr))
    {
    $out_arr[$search_key.','.$key] = $val;
    unset($out_arr[$search_key]);
    }
    else
    {
    $out_arr[$key] = $val;
    }
    }
    print_r($out_arr);
    ?>
      

  3.   

    谈不上算法foreach($arr as $key=>$val){
    $newArray[$val] .= $key.",";
    }
      

  4.   

    这是去除重复数据  这种自带函数我会用我需要的是拿出重复的数据....得到的结果像这样8 =>.icon-48-alarms  
    14,17,21 => .icon-16-alarms
    24,47 => .icon-new-alarms
      

  5.   

    难道我的结果不对?Array
    (
        [8] => .icon-48-alarms
        [14,17,21] => .icon-16-alarms
        [24,27] => .icon-new-alarms
    )
      

  6.   

    $ar = array(8 => '.icon-48-alarms', 
                14 => '.icon-16-alarms', 
                17 => '.icon-16-alarms', 
                21 => '.icon-16-alarms', 
                24 => '.icon-new-alarms', 
                27 => '.icon-new-alarms');$t = array();
    foreach($ar as $k=>$v) {
      $t[$v] = trim($t[$v] . ",$k", ',');
    }
    $t = array_flip($t);Array
    (
        [8] => .icon-48-alarms
        [14,17,21] => .icon-16-alarms
        [24,27] => .icon-new-alarms
    )