php案例:获取到php美化地址控制器 方法 参数

2023-10-16 16:15:11 浏览数 (1)

1.php

代码语言:javascript复制
<?php
if(array_key_exists('PATH_INFO', $_SERVER) && $_SERVER['PATH_INFO'] !== '/') {//存在这个系统变量的话
    $pathinfo = array_values(array_filter(explode('/', $_SERVER['PATH_INFO'])));//才分
    if(isset($pathinfo))
    {
        $controller =array_shift($pathinfo);//获取到控制器
        $action =array_shift($pathinfo);//获取到方法
        if(isset($pathinfo)) {
            for ($i = 1; $i < count($pathinfo); $i  = 2) {//遍历参数,获取参数
                $params[] = $pathinfo[$i];

            }

        }

    }
}
print_r($controller)."  控制器";
print_r($action)."  方法";
print_r($params)."  ";


/*
    $pathinfo = array_values(array_filter(explode('/', $_SERVER['PATH_INFO'])));

    从 $_SERVER 数组中取出当前请求的 PATH_INFO 部分,使用 explode() 函数按照斜杠进行分割,并将分割后的结果存储在一个数组中。

    使用 array_filter() 函数过滤掉分割后得到的数组中的空元素,以防止出现连续斜杠等情况。

    使用 array_values() 函数重新索引过滤后的数组,使其从 0 开始连续编号。

    将最终的结果数组赋值给 $pathinfo 变量,以便后续的处理和使用。
*/

效果

0 人点赞