Heim >PHP-Framework >Denken Sie an PHP >So verwenden Sie das Navigationsmenü in ThinkPHP6
Mit der Entwicklung des Internets werden Websites immer komplexer, ihre Funktionen werden immer umfangreicher und die Bedürfnisse der Benutzer werden immer vielfältiger. Um Benutzern das schnelle Auffinden der erforderlichen Funktionen zu erleichtern, wird die Navigation erleichtert Menü ist zu einem unverzichtbaren Element geworden. Wie verwende ich das Navigationsmenü in ThinkPHP6? Dieser Artikel führt Sie Schritt für Schritt ein.
1. Erstellen Sie eine Navigationsmenü-Datentabelle. In ThinkPHP6 können wir eine Datenbank zum Speichern von Navigationsmenü-Informationen verwenden. Zuerst müssen wir eine Navigationsmenü-Datentabelle erstellen. Die spezifische Tabellenstruktur ist wie folgt:
CREATE TABLE `menu` ( `id` bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT, `title` varchar(255) NOT NULL COMMENT '菜单名称', `url` varchar(255) NOT NULL DEFAULT '' COMMENT '菜单链接地址', `parent_id` bigint(20) UNSIGNED NOT NULL COMMENT '父级菜单ID', `order` int(11) NOT NULL DEFAULT '0' COMMENT '排序', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='导航菜单表';
2. Daten importieren
Nachdem wir die Navigationsmenüdatentabelle erstellt haben, müssen wir die Navigationsmenüdaten in die Datenbank importieren. Im Allgemeinen können wir Daten auf folgende Weise importieren:
Manuelles Hinzufügen von Daten direkt zur DatenbankIn ThinkPHP6 können wir Modelle verwenden, um eine Verbindung zur Datenbank herzustellen und Daten in der Datenbank abzurufen. Daher müssen wir ein Menümodell erstellen und den Tabellennamen, den Primärschlüssel, den automatischen Zeitstempel und andere Attribute im Modell definieren. Der spezifische Code lautet wie folgt:
<?php namespace appmodel; use thinkModel; class Menu extends Model { protected $table = 'menu'; protected $pk = 'id'; protected $autoWriteTimestamp = true; }4. Erstellen Sie einen Menü-Controller zur Verarbeitung der gesamten menübezogenen Logik, einschließlich des Abrufens von Menüdaten, des Renderns von Menüansichten usw. In ThinkPHP6 können wir Befehlszeilentools verwenden, um schnell Controller zu generieren. Der spezifische Befehl lautet wie folgt:
php think make:controller MenuNachdem der Befehl ausgeführt wurde, finden wir die generierte Datei
Menu.php
im Verzeichnis appcontroller
. Dann können wir im Controller eine Methode definieren, um das Navigationsmenü zu erhalten. Der spezifische Code lautet wie folgt: <?php namespace appcontroller; use appmodelMenu; use thinkacadeView; class MenuController { public function index() { // 获取一级菜单 $menus = Menu::where('parent_id', 0)->order('order')->select(); // 获取当前选中的菜单ID $selectedId = input('get.id', ''); View::assign([ 'menus' => $menus, 'selectedId' => $selectedId, ]); return View::fetch('index'); } }Im Controller verwenden wir die
where
-Methode des Menu
Modell, um das Menü der ersten Ebene zu erhalten, dann die Menüdaten und die aktuell ausgewählte Menü-ID der Ansicht zuzuweisen und schließlich die Ansicht zu rendern. 5. Erstellen Sie eine Menüansichtappcontroller
目录下找到生成的Menu.php
文件。然后我们可以在控制器中定义一个获取导航菜单的方法,具体代码如下:
<nav> <ul> <?php foreach ($menus as $menu): ?> <li class="<?php if ($selectedId == $menu['id']) echo 'active' ?>"> <a href="<?php echo $menu['url'] ?>"><?php echo $menu['title'] ?></a> </li> <?php endforeach; ?> </ul> </nav>
在控制器中,我们使用Menu
模型的where
方法来获取一级菜单,然后将菜单数据和当前选中的菜单ID分配给视图,最后渲染视图。
5.创建菜单视图
菜单视图用于展示导航菜单,我们可以将导航菜单展示在页面的头部或者左侧,具体位置可以根据实际需求来确定。在视图中,我们可以使用foreach
循环来遍历菜单数据,然后输出对应的HTML代码。
use thinkacadeRoute; Route::get('menu/index', 'MenuController@index');
6.创建路由
在ThinkPHP6中,我们需要创建一个路由来访问菜单控制器的index
方法,具体代码如下:
路由定义好之后,我们就可以通过http://localhost/menu/index
Die Menüansicht wird zur Anzeige des Navigationsmenüs im Kopf oder auf der linken Seite der Seite verwendet. In der Ansicht können wir die foreach
-Schleife verwenden, um die Menüdaten zu durchlaufen und dann den entsprechenden HTML-Code auszugeben.
6. Erstellen Sie eine Route
In ThinkPHP6 müssen wir eine Route erstellen, um auf die index
-Methode des Menü-Controllers zuzugreifen. Der spezifische Code lautet wie folgt:
http://localhost/menu/index
übergeben, um auf die Menüseite zuzugreifen. 🎜🎜Zusammenfassung🎜🎜Das Obige ist der vollständige Prozess der Verwendung des Navigationsmenüs in ThinkPHP6, einschließlich der Erstellung einer Navigationsmenü-Datentabelle, des Importierens von Daten, der Erstellung eines Menümodells, der Erstellung eines Menü-Controllers, der Erstellung einer Menüansicht und der Erstellung einer Route. Durch dieses Beispiel glaube ich, dass jeder die Fähigkeiten zur Verwendung des Navigationsmenüs in ThinkPHP6 beherrscht und diese schnell im Projekt anwenden kann. 🎜Das obige ist der detaillierte Inhalt vonSo verwenden Sie das Navigationsmenü in ThinkPHP6. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!