Heim > Backend-Entwicklung > PHP-Problem > Benutzerdefinierte PHP-Menüänderung

Benutzerdefinierte PHP-Menüänderung

PHPz
Freigeben: 2023-05-07 13:40:07
Original
653 Leute haben es durchsucht

Änderung benutzerdefinierter PHP-Menüs

Benutzerdefinierte Menüs sind in modernen Websites eine Notwendigkeit und bieten Benutzern ein schnelles und intuitives Navigationserlebnis. Während des Entwicklungsprozesses müssen wir häufig vorhandene Menüfunktionen an unterschiedliche Anforderungen anpassen. In diesem Artikel wird erläutert, wie Sie benutzerdefinierte PHP-Menüs ändern, um Entwicklern das einfache Ändern von Menüs zu erleichtern.

1. Vorbereitende Vorbereitungen

Zunächst benötigen wir einen vorhandenen Menücode zur Änderung. Hier verwenden wir als Beispiel einen einfachen PHP-Menücode. Dieses Beispielmenü zeigt verschiedene Kategorien und die Unterkategorien darunter.

<ul>
    <?php
        $categories = array(
            'Category 1' => array(
                'Subcategory 1',
                'Subcategory 2',
                'Subcategory 3'
            ),
            'Category 2' => array(
                'Subcategory 4',
                'Subcategory 5'
            )
        );

        foreach ($categories as $category => $subcategories) {
            echo '<li>' . $category . '<ul>';
            foreach ($subcategories as $subcategory) {
                echo '<li>' . $subcategory . '</li>';
            }
            echo '</ul></li>';
        }
    ?>
</ul>
Nach dem Login kopieren

Dieser Code generiert ein einfaches vertikales Menü wie dieses:

Kategorie 1

  • Unterkategorie 1
  • Unterkategorie 2
  • Unterkategorie 3

Kategorie 2

  • Unterkategorie 4
  • Unterkategorie 5

2 Menüänderungscode

Jetzt fügen wir etwas Code hinzu, damit das Menü im Hintergrund geändert werden kann. Fügen Sie zunächst den folgenden Code oben in Ihrem Menücode ein:

<?php
    // 声明一个变量,用于存储菜单选项
    $menu_items = array(
        'Category 1' => array(
            'Subcategory 1',
            'Subcategory 2',
            'Subcategory 3'
        ),
        'Category 2' => array(
            'Subcategory 4',
            'Subcategory 5'
        )
    );

    // 如果有提交表单
    if($_SERVER["REQUEST_METHOD"] == "POST"){
        // 取出 identifier 值
        $identifier = $_POST['identifier'];
        
        // 取出选项值
        $selected_items = $_POST['selected_items'];
        
        // 更新菜单选项
        $menu_items[$identifier] = $selected_items;
    }
?>
Nach dem Login kopieren

Dieser Code erstellt ein Array $menu_items, das alle aktuellen Menüoptionen enthält. Wenn dann ein Formular gesendet wird, erkennt es die POST-Daten, extrahiert die Menü-IDs und ausgewählten Optionen, die geändert werden müssen, und aktualisiert sie in $menu_items.

Als nächstes müssen wir dem Menücode Formularsteuerelemente hinzufügen, damit das Menü geändert werden kann. Fügen Sie unter jedem Menüpunkt den folgenden Code hinzu:

<li>
    <?php
        // 输出当前选项
        echo $category;
    ?>
    <form method="POST">
        <input type="hidden" name="identifier" value="<?php echo $category; ?>" />
        <select name="selected_items[]" multiple>
            <?php
                foreach($subcategories as $subcategory) {
                    $selected = (in_array($subcategory, $menu_items[$category])) ? 'selected' : '';
                    echo '<option ' . $selected . ' value="' . $subcategory . '">' . $subcategory . '</option>';
                }
            ?>
        </select>
        <button type="submit">Save</button>
    </form>
</li>
Nach dem Login kopieren

Dieser Code fügt unter jedem Menüpunkt eine Auswahlliste und eine Schaltfläche zum Senden hinzu. In der Auswahlliste werden alle Unterkategorien dieser Kategorie aufgelistet, und der Benutzer kann die Unterkategorien auswählen, die dem Menüpunkt hinzugefügt werden sollen. Wenn der Benutzer auf die Schaltfläche „Senden“ klickt, wird das Formular gesendet und der PHP-Code im obigen Code wird ausgeführt, um die Menüelemente zu aktualisieren.

3. Verarbeitung der geänderten Menüvorgänge

Welche Vorgänge müssen wir nun ausführen, wenn der Benutzer das Formular absendet und den Menüpunkt ändert? Beispielsweise können wir Menüpunkte in einer Datenbank speichern, sie in eine Konfigurationsdatei ausgeben oder sie direkt im Menücode erneut aktualisieren.

Hier gehen wir davon aus, dass Sie Ihr geändertes Menü direkt auf die Website exportieren möchten. Sie können das geänderte Menü direkt in Ihrem PHP-Code ausgeben. Fügen Sie dazu den folgenden Code am Ende Ihres Menücodes hinzu:

<ul>
    <?php
        foreach ($menu_items as $category => $subcategories) {
            echo '<li>' . $category . '<ul>';
            foreach ($subcategories as $subcategory) {
                echo '<li>' . $subcategory . '</li>';
            }
            echo '</ul></li>';
        }
    ?>
</ul>
Nach dem Login kopieren

Dadurch wird das geänderte Menü durchlaufen und auf der Website angezeigt.

4. Zusammenfassung

In diesem Artikel haben wir vorgestellt, wie man benutzerdefinierte PHP-Menüs durch Hinzufügen von Code ändert. Wir haben gezeigt, wie Formulare verwendet werden, um das Hinzufügen und Ändern von Menüelementen zu handhaben, und wir haben gezeigt, wie die geänderten Optionen im Menücode ausgegeben werden. Ich hoffe, dieser Artikel ist hilfreich für Sie.

Das obige ist der detaillierte Inhalt vonBenutzerdefinierte PHP-Menüänderung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage