本教程需要精通PHP语言的开发者


程序路由模式格式为:

前端控制器:/index.php?s=模块目录&c=文件名&m=方法名&参数名=参数值
会员控制器:/index.php?s=member&app=模块目录&c=文件名&m=方法名&参数名=参数值
后台控制器:/admin.php?s=模块目录&c=文件名&m=方法名&参数名=参数值


对URL路由的方法重写解析接口,需要在后台开启伪静态

image.png


例如,默认会员中心路由格式为:

/index.php?s=member&c=paylog&m=index

自定义为:

/member.html?c=paylog&m=index


1、新建文件:config/router.php

<?php
// 自定义URL路由模式

if (strpos($uri, 'member.html?') === 0) {
    $is_404 = 0;
    $arr = parse_url($uri);
    parse_str($arr['query'],$_GET);
    $_GET['s'] = 'member';
}


2、重写路由类文件,新建文件:dayrui/My/Library/Router.php

<?php namespace My\Library;

class Router extends \Phpcmf\Library\Router
{

    // 重写会员路由
    function member_url($url, $query = [], $self = SELF)
    {
        
        $url = parent::member_url($url, $query, $self );
        return str_replace('index.php?s=member&', 'member.html?', $url);
    }
    
    
    // 重写前端路由和后台路由
    function member_url($url, $query = [], $self = SELF)
    {
        $url = parent::url($url, $query, $self );
        if (IS_ADMIN) {
            // 表示后台
            return $url; // 返回默认格式
        } else {
            // 表示前端
            return $url; // 返回默认格式
        }
        
    }


}