【问题标题】:Request uri in array请求数组中的uri
【发布时间】:2012-03-19 20:37:51
【问题描述】:

使用/test/test/test 之类的URI,我想要一种从$__SERVER['request_uri'] 创建数组的方法,例如:

[0] => '/' [1] => /test/ [2] => /test/test/ [3] => /test/test/test/

任何帮助将不胜感激!

【问题讨论】:

    标签: php arrays uri


    【解决方案1】:

    我刚刚为您创建的快速脏脚本:

    <?
            $path = "/test/test2/test3";
            $arr = explode("/", $path);
    
            $arraynew = array();
    
            $i=0;
            foreach ($arr as $k => $v) {
                    if (($k==0) && ($v=="")) {
                            $arraynew[$i] = "/";
                            $i++;
                            continue;
                    }
                    if ($i == 1) {
                            $arraynew[$i] = $arraynew[$i-1] . $v;
                    } else {
                            $arraynew[$i] = $arraynew[$i-1] . "/" . $v;
                    }
                    $i++;
            }
    
            print_r($arraynew);
    ?>
    

    或者这个更干净简单,最后加上“/”:

    <?
            $path = "/test/test2/test3";
            $arr = explode("/", $path);
    
            $arraynew = array();
    
            $i=0;
            foreach ($arr as $k => $v) {
                    $i > 0 ? $arraynew[] = $arraynew[$i-1] . $v . "/" : $arraynew[] = "/";
    
                    $i++;
            }
    
            print_r($arraynew);
    ?>
    

    【讨论】:

      【解决方案2】:

      查找dirname() function

      它为您提供任何给定文件名或目录名的父目录。

      在您的情况下,只需重复(循环)使用它来获取每个连续的父文件夹名称。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2015-05-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-08-18
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多