Heim  >  Artikel  >  PHP-Framework  >  So schreiben Sie eine Thinkphp-URL ohne Backslash

So schreiben Sie eine Thinkphp-URL ohne Backslash

PHPz
PHPzOriginal
2023-04-11 15:05:23694Durchsuche

Bei der Verwendung von ThinkPHP für die Website-Entwicklung wird häufig die Funktion zur Generierung von URL-Adressen verwendet. Standardmäßig fügt ThinkPHP beim Generieren der URL-Adresse einen Backslash zwischen dem Controller-Namen und dem Methodennamen hinzu, zum Beispiel:

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

In einigen Szenarien benötigen wir jedoch möglicherweise die URL-Adresse ohne den Backslash, zum Beispiel beim Ausführen von Front- End-Routing-Sprung. In diesem Artikel erfahren Sie, wie Sie in ThinkPHP URL-Adressen ohne Backslashes generieren.

Methode 1: Ändern Sie die Konfigurationsdatei

Wir können die Konfigurationsdatei von ThinkPHP ändern, um die URL-Adresse ohne Backslashes zu erstellen. Setzen Sie es im Element config.php 配置文件中,找到 url_common_param auf „false“. Der Beispielcode lautet wie folgt:

// 关闭默认URL模式中控制器与操作之间的分隔符“/”
'url_common_param' => false,

Nach der Änderung können wir die URL-Adresse neu generieren, um sie zu testen:

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

Wie Sie sehen können, enthält die zu diesem Zeitpunkt generierte URL-Adresse keine Backslashes mehr.

Methode 2: URL-Adressen manuell zusammenfügen

Zusätzlich zur Änderung der Konfigurationsdatei können wir URL-Adressen auch manuell zusammenfügen, um den Effekt ohne Backslashes zu erzielen. Der Beispielcode lautet wie folgt:

// 获取当前请求的根URL地址
$baseUrl = request()->root(true);

// 获取控制器名和方法名
$controller = request()->controller();
$action = request()->action();

// 拼接URL地址
$url = $baseUrl . '/' . $controller . $action;

echo $url;

Mit dem obigen Code können wir die URL-Adresse manuell ohne Backslashes zusammenfügen. Es ist zu beachten, dass das manuelle Zusammenfügen von URL-Adressen einige Risiken und Probleme mit sich bringen kann und daher in tatsächlichen Anwendungen mit Vorsicht verwendet werden muss.

Kurz gesagt, die beiden oben genannten Methoden können in ThinkPHP URL-Adressen ohne Backslashes generieren. In bestimmten Anwendungen können wir die geeignete Methode zum Generieren von URL-Adressen basierend auf der tatsächlichen Situation auswählen.

Das obige ist der detaillierte Inhalt vonSo schreiben Sie eine Thinkphp-URL ohne Backslash. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn