改写ThinkPHP的U方法使其路由下分页正常
发布时间:2020-12-14 14:00:34 所属栏目:大数据 来源:网络整理
导读:ThinkPHP3.1.3在启用路由的情况下,其分页地址不是路由的地址,由于thinkphp3.2.1的代码也没有修复,很多人都遇到了这一问题,本文采纳olcms的修改方法解决这一问题,特别感谢phper jack对此做出的贡献,具体解决办法是修改ThinkPHP的functions.php的U方法,
ThinkPHP3.1.3在启用路由的情况下,其分页地址不是路由的地址,由于thinkphp3.2.1的代码也没有修复,很多人都遇到了这一问题,本文采纳olcms的修改方法解决这一问题,特别感谢phper jack对此做出的贡献,具体解决办法是修改ThinkPHP的functions.php的U方法,在287行左右: $val){
if('' !== trim($val))
$url .= $depr . $var . $depr . urlencode($val);
}
后面加入以下代码 $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,$url); //url替换为路由规则
}
//注 /s/:c/c/4/p/__PAGE__
//dump($zlgurl);
$url = str_replace($lg.'/'.$tempzlg,$zlgurl);//url替换路由规则参数
} 至此问题得以解决! (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |