$tree    = array('00' => '/',
                         '01' => '00',
                         '02' => '01'
        );有这样一个数组,当我提供02的时候,我希望获取到$str = 00>>01>>02;  这个该怎么操作啊?想不明白了!

解决方案 »

  1.   

    就是写个方法,给个参数02,根据这个数组的对应关系,通过02找到01,在找到00,最后输出 00>>01>>02这样一个字符串
    function get_str($param,arr=array())
    {
       if($tree[$param] == '/'){
           $arr []= $tree[$param];
           $arr_tmp = array_reverse($arr);
           $str = implde(">>",$arr_tmp);
           return $str;
           
      }else{
           get_str($tree[$param]);
           $arr[] = $tree[$param];
           
      }
    }不知道问题出在哪里了。
      

  2.   

    $tree = array(
      '00' => '/',
      '01' => '00',
      '02' => '01'
    );$r = '';$k = '02';do {
      $r = ">>$k".$r;
      $k = $tree[$k];
    }while($k && $tree[$k]!='/');echo "$k$r";
    00>>01>>02
      

  3.   

    简单地说,看你的程序跟你所说的相去甚远,所以我到现在还没搞清你的需求我猜是根据key把一组value连起来?
      

  4.   

    <?php
    function get_str($param,$sta=0)
    {
    session_start();
      $tree = array('00' => '/',
                     '01' => '00',
                     '02' => '01'
            );
      if($tree[$param] == '/'){
      $_SESSION['arr'][$sta] = $param;
      $arr_tmp = krsort($_SESSION['arr']);  
        if($arr_tmp == 1){
          $str = implode(">>",$_SESSION['arr']);
      }
      $_SESSION['arr'] = '';
      echo $str;
      }else{
       $_SESSION['arr'][$sta] = $param;
        get_str($tree[$param],$sta+1);
        
      }
    }
    get_str('02');
    ?>
      

  5.   


    是想弄个页面导航的东西,
    就行csdn这样的 
        CSDN-CSDN社区-PHP-基础编程数组模拟了访问结构,但是貌似还是有问题!