本帖最后由 Stephen1967 于 2011-07-14 09:40:13 编辑

解决方案 »

  1.   

    $ar = 
       Array
    (
        0 => Array
            (
                0 => 3,
                1 => 0,
                2 => '错误类别1'
            ),    1 => Array
            (
                0 => 60,
                1 => 0,
                2 => '错误类别2'
            ),    2 => Array
            (
                0 => 58,
                1 => 3,
                2 => '错字23'
            ),    3 => Array
            (
                0 => 61,
                1 => 60,
                2 => '错别字'
            ),    4 => Array
            (
                0 => 67,
                1 => 2,
                2 => '其它问题'
            ),    5 => Array
            (
                0 => 68,
                1 => 55,
                2 => '不流畅'
            ),    6 => Array
            (
                0 => 69,
                1 => 55,
                2 => '连接错误'
            ),    7 => Array
            (
                0 => 70,
                1 => 55,
                2 => '播放中断'
            ),    8 => Array
            (
                0 => 2,
                1 => 0,
                2 => '错误类别3'
            ),    9 => Array
            (
                0 => 55,
                1 => 2,
                2 => '点播视频'
            ),    10 => Array
            (
                0 => 57,
                1 => 3,
                2 => '阿斯顿发送地方22'
            ),    11 => Array
            (
                0 => 59,
                1 => 2,
                2 => '常见问题'
            ));
    echo "<pre>";
    //print_r($ar);function getNames($id, &$ar) {
       $ar_id_parentid = $ar_id_name = array();
       foreach($ar as $v) {
          $ar_id_parentid[$v[0]] = $v[1];
          $ar_id_name[$v[0]] = $v[2];
       }
       $result = array();
       while($id != 0) {
          $result[] = $ar_id_name[$id];
          $id = $ar_id_parentid[$id];
       }
       return implode('-', array_reverse($result));
    }
    echo getNames(68, $ar);