关灯
0

Thinkphp 3.2 分页Page类 支持URL路由

摘要: 最终目的实现以/product/lists/1-0-0-1.html这样的URL形式且支持分页。路由配置:#39;/^product\/lists\/(\d+)-(\d+)-(\d+)-(\d+)$/#39; = #39;Product/lists?id=:1a最终目的实现以/product/lists/1-0-0-1.html这样 ...
最终目的实现以/product/lists/1-0-0-1.html这样的URL形式且支持分页。路由配置:'/^product\/lists\/(\d+)-(\d+)-(\d+)-(\d+)$/' => 'Product/lists?id=:1&a

 
最终目的实现以/product/lists/1-0-0-1.html这样的URL形式且支持分页。
路由配置:

'/^product\/lists\/(\d+)-(\d+)-(\d+)-(\d+)$/'  => 'Product/lists?id=:1&aid=:2&sid=:3&p=:4',
修正Library\Think\Page.class.php分类以支持路由

//在23行,修改访问修饰符private为public
    public $url='';
    //在70行,防止经过传参后会出现问题urlencode('[PAGE]')转为小写,修改为
    $this->url = str_replace(strtolower(urlencode('[PAGE]')), $page, $this->url);//开启URL不区分大小写时处理
    return str_replace(urlencode('[PAGE]'), $page, $this->url);
    //在80行,修正为以下实现自定义URL
    /* 生成URL */
            if(empty($this->url)){
                $this->parameter[$this->p] = '[PAGE]';
                $this->url = U(ACTION_NAME, $this->parameter);
            }
    //使用示例
    $Page       = new \Think\Page($count,15);// 实例化分页类 传入总记录数和每页显示的记录数(25)
    $page_tpl = urlencode('[PAGE]'); 
    $Page->url   =   U("Product/list/{$this->id}-{$this->aid}-{$this->sid}-{$page_tpl}");
    $show       = $Page->show();

鲜花

握手

雷人

路过

鸡蛋

说点什么...

已有0条评论

最新评论...

本文作者
2019-11-26 11:39
  • 1
    粉丝
  • 154
    阅读
  • 0
    回复
热门评论
排行榜
关闭

站长推荐上一条 /1 下一条

Copyright   ©2017-2018  易福网-专业的公众平台源码交流站Powered by©efwww.com!技术支持:易福网