首頁  >  文章  >  php框架  >  thinkphp url怎麼寫成不含反斜杠

thinkphp url怎麼寫成不含反斜杠

PHPz
PHPz原創
2023-04-11 15:05:23690瀏覽

在使用 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 位址已經沒有反斜線了。

方法二:手動拼接 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 位址。

以上是thinkphp url怎麼寫成不含反斜杠的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn