美文网首页
ThinkPHP基础-----第五章(路由相关)第三部分

ThinkPHP基础-----第五章(路由相关)第三部分

作者: 大菜鸟呀 | 来源:发表于2018-08-23 22:16 被阅读4次

    1、变量规则:

        单参数:
        Route::rule('course/:id','Index/index/course','get','',['id'=>'\d{1,3}'])
    
        多参数:
        Route::rule('course/:id/:name','Index/index/course','get','',['id'=>'\d{1,3}','name'=>'\w+ '])
    

    2、路由参数:

        Route::rule('course/:id/:name','Index/index/course','get',['method'=>'get','ext'=>'html'],['id'=>'\d{1,3}','name'=>'\w+ '])
    
        'method'=>请求类型;
        'ext'=>后缀;
        参数  说明
            method              请求类型检测,支持多个请求类型
            ext URL             后缀检测,支持匹配多个后缀
            deny_ext            URL禁止后缀检测,支持匹配多个后缀
            https               检测是否https请求
            domain              域名检测
            before_behavior     前置行为(检测)
            after_behavior      后置行为(执行)
            callback            自定义检测方法
            merge_extra_vars    合并额外参数
            bind_model          绑定模型(V5.0.1+)
            cache               请求缓存(V5.0.1+)
            param_depr          路由参数分隔符(V5.0.2+)
            ajax                Ajax检测(V5.0.2+)
            pjax                Pjax检测(V5.0.2+)
    

    3、资源路由

        1、声明:
            Route::resource('blog','Index/Blog')
    
        2、设置以后会自动注册7个路由规则:
            标识      请求类型        生成路由规则      对应操作方法(默认)
            index   GET         blog            index
            create  GET         blog/create     create
            save    POST        blog            save
            read    GET         blog/:id        read
            edit    GET         blog/:id/edit   edit
            update  PUT         blog/:id        update
            delete  DELETE      blog/:id    delete
            -----------------------------
            具体指向的控制器由路由地址决定,例如上面的设置,会对应
            index模块的blog控制器,
            你只需要为Blog控制器创建以上对应的操作方法就可以支持下
            面的URL访问
            ------------
            http://serverName/blog/
            http://serverName/blog/128
            http://serverName/blog/28/edit
    

    5、快捷路由:

        // 给User控制器设置快捷路由
            Route::controller('user','index/User');
    
        //定义User控制器
        namespace app\index\controller;
    
                class User {
                    public function getInfo()
                    {
                    }
    
                    public function getPhone()
                    {
                    }
                        }
    
        我们可以通过下面的URL访问:
            get http://localhost/user/info
            get http://localhost/user/phone
    
    6、URL地址生成:
    
        在控制器中导入: use think\Url;
    
        <?php
            namespace app\index\controller;//声明命名空间
    
            use think\Url;
            //声明控制器
            class Urls{
            //index 方法
            public function index(){
                //系统类:
                dump(Url::build('Index/index/index'));
                //输出index控制器方法的路由地址
    
    
                //系统方法:
                dump(url('Index/index/index'))
       
            }
            }
        ?>
    

    相关文章

      网友评论

          本文标题:ThinkPHP基础-----第五章(路由相关)第三部分

          本文链接:https://www.haomeiwen.com/subject/rjomiftx.html