博主信息
博文 29
粉丝 0
评论 0
访问量 36196
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
PHP基础:利用URL路由解析技术解析控制器及参数
暴宇
原创
1090人浏览过

PHP基础:利用URL路由解析技术解析控制器及参数

1.代码示例

// 路由原理// 目标:将URL中的控制器,方法解析出来,映射到对应的控制器类和方法上// 控制器class UserController{    public function getUser($name, $job)    {        return "姓名 ==> $name, 职业 ==> $job";    }}// 1. 解析出PATHINFO$pathinfo  = array_values(array_filter(explode('/', $_SERVER['PATH_INFO'])));// print_r($pathinfo);// 2. 解析控制器$controller = ucfirst(array_shift($pathinfo)) . 'Controller'; // 3. 解析控制器中的方法$action = array_shift($pathinfo);// print_r($pathinfo);// 4. 解析参数: pathinfo路径变量// 这里放的是从pathinfo中解析出来的变量组成的数组$params = [];for ($i=0; $i<count($pathinfo); $i+=2) {    // 检查当前pathinfo变量是否有值?    if (isset($pathinfo[$i+1])){        $params[$pathinfo[$i]] = $pathinfo[$i+1];    } }// print_r($params);// 5. 调用控制器方法$user = new $controller();echo $user->$action(...array_values($params));// http://study.edo/route1.php/user/getuser/name/张三/job/经理

2.总结

利用URL路由解析技术可以方便的调用控制器的方法,并能同时传递参数,让参数的传递更简便。

批改状态:未批改

老师批语:
本博文版权归博主所有,转载请注明地址!如有侵权、违法,请联系admin@php.cn举报处理!
全部评论 文明上网理性发言,请遵守新闻评论服务协议
0条评论
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号

  • 登录PHP中文网,和优秀的人一起学习!
    全站2000+教程免费学