zoukankan      html  css  js  c++  java
  • 修正Thinkphp 3.2 分页Page类以支持URL路由

    http://www.thinkphp.cn/topic/22114.html

    最终目的实现以http://www.fl900.com/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();
  • 相关阅读:
    PHP获取指定分钟数的下一个整数倍
    phpspreadsheet
    澳大利亚 主要城市列表
    db2编目抽取
    openssl实现CA自签证书和颁发数字证书
    基于Docker的redis集群搭建
    Python测试DB2连通性
    在Vim中查看文件编码
    搭建redis集群
    Python(十)之GUI编程
  • 原文地址:https://www.cnblogs.com/lxwphp/p/15453925.html
Copyright © 2011-2022 走看看