18910140161

tp6 中如何通过伪静态隐藏模块名

顺晟科技

2022-09-15 16:14:19

91

比如 http://xxxxx/home/about/index...
隐藏掉home http://xxxxx/about/index.html

在common.php文件中添加 siteurl方法

/**
 * Url生成
 * @param string      $url    路由地址
 * @param array       $vars   变量
 * @param bool|string $suffix 生成的URL后缀
 * @param bool|string $domain 域名
 * return string
 */
function siteurl(string $url = '', array $vars = [], $suffix = true, $domain = false) {
    $string = url($url, $vars, $suffix, $domain);
    $string = strval($string);
    # 去除url中默认模块名home
    $search = '/home/';
    $pos = stripos($string, $search);
    if($pos === 0) {
        //$string = '/'.ltrim($string, $search);
        //$string = '/'.substr($string, strlen($search));
        $string = substr($string, 0, $pos). '/'. substr($string, $pos + strlen($search));
    }
    return $string;
}

使用方法

<a href="{:siteurl('product/index')}"></a>
相关文章
我们已经准备好了,你呢?
2024我们与您携手共赢,为您的企业形象保驾护航