thinkphp url怎么寫成不帶反斜杠

在使用 thinkphp 進行網站開發的過程中,經常會用到 url 地址生成功能。默認情況下,thinkphp 在生成 url 地址時會在控制器名和方法名之間添加一個反斜杠,例如:

// 生成 URL 地址 $url = url('Index/index'); echo $url;  // 輸出:/index.php/Index/index.html

但是,在某些場景中,我們可能需要不帶反斜杠的 URL 地址,例如在進行前端路由跳轉時。本文將介紹如何在 ThinkPHP 中生成不帶反斜杠的 URL 地址。

方法一:修改配置文件

我們可以通過修改 ThinkPHP 的配置文件來實現 URL 地址不帶反斜杠。在 config.php 配置文件中,找到 url_common_param 項,將其設置為 false 即可。示例代碼如下:

// 關閉默認URL模式中控制器與操作之間的分隔符“/” 'url_common_param' => false,

修改完畢后,我們可以重新生成 URL 地址測試一下:

// 生成 URL 地址 $url = url('Index/index'); echo $url;  // 輸出:/index.phpIndexindex.html

可以看到,此時生成的 URL 地址已經沒有反斜杠了。

立即學習PHP免費學習筆記(深入)”;

方法二:手動拼接 URL 地址

除了修改配置文件外,我們還可以通過手動拼接 URL 地址來實現不帶反斜杠的效果。示例代碼如下:

// 獲取當前請求的根URL地址 $baseUrl = request()->root(true);  // 獲取控制器名和方法名 $controller = request()->controller(); $action = request()->action();  // 拼接URL地址 $url = $baseUrl . '/' . $controller . $action;  echo $url;

通過以上代碼,我們可以手動拼接出不帶反斜杠的 URL 地址。需要注意的是,手動拼接 URL 地址可能會帶來一些風險和問題,因此在實際應用中需要謹慎使用。

總之,以上兩種方法都可以實現在 ThinkPHP 中生成不帶反斜杠的 URL 地址。在具體應用中,我們可以根據實際情況選擇合適的方式來生成 URL 地址。

? 版權聲明
THE END
喜歡就支持一下吧
點贊7 分享