建议修改帮助文档

浏览:1336 发布日期:2015/03/31
在帮助文档
http://document.thinkphp.cn/manual_3_2.html#route_define
提到路由可以被定义为几个参数连续的形式:'URL_ROUTE_RULES'=>array(
    'news/:year/:month/:day' => array('News/archive', 'status=1'),
    'news/:id'               => 'News/read',
    'news/read/:id'          => '/news/:1',
),
而在分页类Page.class.php中分页生成的url是由U函数生成的:        $this->parameter  = empty($parameter) ? $_GET : $parameter;        $this->url = U(ACTION_NAME, $this->parameter);U函数又是这样组装的        if(!empty($vars)) { // 添加参数
            foreach ($vars as $var => $val){
                if('' !== trim($val))   $url .= $depr . $var . $depr . urlencode($val);
            }                
        }
也就是说如果我定义的路由:
news/:year/:month/:day需要分页的时候
分页链接会生成为
news/year/:year/month/:month/day/:day/p/:p.shtml
这样就无法匹配我定义的路由
要么在解析路由的时候把news/year/:year/month/:month/day/:day
解析为news/:year/:month/:day
要么U函数在拼接url的时候拼接成news/:year/:month/:day
要么就不要在帮助文档写这种坑爹的东西,并特别指出/:year/:month/:day这样的路由是不受U函数支持的
评论(
后面还有条评论,点击查看>>