您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

改写ThinkPHP的U方法使其路由下分页正常_PHP教程

2025/3/13 2:26:41发布18次查看
thinkphp3.1.3在启用路由的情况下,其分页地址不是路由的地址,由于thinkphp3.2.1的代码也没有修复,很多人都遇到了这一问题,本文采纳olcms的修改方法解决这一问题,特别感谢phper jack对此做出的贡献,具体解决办法是修改thinkphp的functions.php的u方法,在287行左右:
if(!empty($vars)) { // 添加参数 foreach ($vars as $var => $val){ if('' !== trim($val)) $url .= $depr . $var . $depr . urlencode($val); }
后面加入以下代码
/** tp开启路由之后下一页路由失效问题 分页类url组装*/ //如果开启路由 if(c('url_router_on')){ foreach (c('url_route_rules') as $zhaolg => $zlig){//遍历路由 if(strstr('/'.group_name.$url,$zlig)){//从网址中找路由规则 $lg = strstr($zhaolg,'/:');//分析规则 带参数? if($lg){//如果规则带参数 $tempzlg = str_replace('/:','',$lg);//取参数 //dump($tempzlg); if($tempzlg){ if(c('app_sub_domain_deploy')){ $zlgurl = str_replace($zlig,$zhaolg,'/'.group_name.$url); //url替换为路由规则 }else{ $zlgurl = str_replace($zlig,$zhaolg,$url); //url替换为路由规则 } //注 /s/:c/c/4/p/__page__ //dump($zlgurl); $url = str_replace($lg.'/'.$tempzlg,'',$zlgurl);//url替换路由规则参数 } }else{//分析规则 不带参数 if(c('app_sub_domain_deploy')){ $url = str_replace($zlig,$zhaolg,'/'.group_name.$url);//url替换为路由规则 }else{ $url = str_replace($zlig,$zhaolg,$url);//url替换为路由规则 } } } } }
至此问题得以解决!
http://www.bkjia.com/phpjc/824664.htmlwww.bkjia.comtruehttp://www.bkjia.com/phpjc/824664.htmltecharticlethinkphp3.1.3在启用路由的情况下,其分页地址不是路由的地址,由于thinkphp3.2.1的代码也没有修复,很多人都遇到了这一问题,本文采纳olcm...
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product