Heim >PHP-Framework >Denken Sie an PHP >ThinkPHP verwendet die U-Methode, um automatisch URL-Hyperlinks zu generieren

ThinkPHP verwendet die U-Methode, um automatisch URL-Hyperlinks zu generieren

尚
nach vorne
2020-05-06 09:16:073897Durchsuche

ThinkPHP verwendet die U-Methode, um automatisch URL-Hyperlinks zu generieren

ThinkPHP U-Methode

U-Methode ist eine in ThinkPHP integrierte Verknüpfungsmethode, die basierend auf der System-URL-Moduskonfiguration dynamisch intelligente URL-Adressen generieren kann . .

Da ThinkPHP eine Vielzahl verschiedener URL-Muster sowie Projektgruppierungsmuster unterstützt, können sich die URL-Muster manchmal ändern, wenn sich die Bereitstellungsumgebung ändert, und die U-Methode ist genau das, was das Problem unterschiedlicher Umgebungen löst Konfigurationen. Das Problem der URL-Vereinheitlichung. Neben der dynamischen Generierung von URLs zur Anpassung an Systemkonfigurationen bietet die U-Methode auch den Vorteil, automatisch pseudostatische Suffixe hinzuzufügen.

Syntax der U-Methode

Die Definitionsregeln der U-Methode lauten wie folgt:

('[分组/模块/操作]?参数' [,'参数','伪静态后缀','是否跳转','显示域名'])

Die optionalen Parameter sind in eckigen Klammern eingeschlossen , Modul und Im Betrieb werden standardmäßig die aktuelle Gruppe, das aktuelle Modul und der aktuelle Betrieb verwendet.

U-Methodeninstanz

U-Methode ist eine Systemfunktion von ThinkPHP und kann direkt in Operationsmethoden oder in Vorlagen verwendet werden (siehe Text unten).

Angenommen, das aktuelle Modul ist die Indexoperation, generieren Sie die Listenoperations-URL des aktuellen Moduls:

U('list?cat_id=1&status=1')

Die generierte URL ist ein relativer Link: http://www.5idev.com /index.php /Index/list/cat_id/1/status/1

Gleichzeitig unterstützt die U-Methode auch die folgenden zwei Definitionsformate. Das obige Beispiel entspricht dem folgenden Definitionsformat:

U'list',array('cate_id'=>1,'status'=>1))
U'list','cate_id=1&status=1')

U-Methode in Vorlage verwenden

Die U-Methode kann nicht nur dynamisch URL-Adressen in Operationsmethoden generieren, sondern wird tatsächlich häufiger zum Generieren von Hyperlink-Adressen in Vorlagen verwendet:

超链接字符

Generieren Der eigentliche HTML-Code nach der URL lautet:

// Pathinfo 模式:
<a href="http://www.5idev.com/lindex.php/blog/list/cat_id/1/status/1">超链接字符</a>

Die U-Methode gehört zur ThinkPHP-Systemfunktion und folgt der allgemeinen Methode zur Verwendung von Systemfunktionen in Vorlagen, d. h. mit { : }.

In U-Methoden verwendete Variablen

werden in U-Methoden in Vorlagen verwendet. Wenn Sie (normalerweise) Variablen verwenden möchten, müssen Sie den Connector verwenden:

<a href="{:U(&#39;blog/list?cat_id=&#39;.$vo[&#39;cat_id&#39;].&#39;&status=1&#39;)}">超链接字符</a>

Vergleich der Ergebnisse der U-Methode unter verschiedenen URL-Modi

Die U-Methode generiert adaptiv verschiedene URL-Formate entsprechend verschiedenen URL-Modi, wie im obigen Beispiel gezeigt, das in jedem Modus generiert wird Der URL-Vergleich erfolgt wie folgt:

  • Normaler Kompatibilitätsmodus: http://www.5idev.com/index.php?m=Index&a=list&cat_id=1&status=1

  • Pathinfo-Modus: http://www.5idev.com/index.php/Index/list/cat_id/1/status/1

  • Rewrite-Modus: http://www.5idev.com/Index/list/cat_id/1/status/1

  • Rewrite-Modus, pseudostatisches Suffix ist .html: http:// www.5idev. com/Index/list/cat_id/1/status/1.html

  • Umschreibemodus mit - Trennzeichen und .html-Suffix: http://www.5idev. com/Index -list-cat_id-1-status-1.html

Beispiele zur Verwendung allgemeiner U-Methoden

// 当前模块 list 操作
U(&#39;list?cat_id=1&status=1&#39;)
// 其他模块操作
U('Blog/read?id=1')        // 生成Blog模块的read操作,并且id为1的URL地址
// 其他分组
U('Admin/User/view?uid=1')    // 生成Admin分组的User模块的view操作的URL地址

Empfohlenes Tutorial: „TP5

Das obige ist der detaillierte Inhalt vonThinkPHP verwendet die U-Methode, um automatisch URL-Hyperlinks zu generieren. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:oschina.net. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen