Rumah >pembangunan bahagian belakang >masalah PHP >php pengubahsuaian menu tersuai

php pengubahsuaian menu tersuai

PHPz
PHPzasal
2023-05-07 13:40:07641semak imbas

Pengubahsuaian Menu Tersuai PHP

Menu tersuai adalah satu keperluan dalam tapak web moden, memberikan pengguna pengalaman navigasi yang pantas dan intuitif. Semasa proses pembangunan, kita selalunya perlu mengubah suai fungsi menu sedia ada mengikut keperluan yang berbeza. Artikel ini akan memperkenalkan cara mengubah suai menu tersuai PHP untuk membantu pembangun mengubah suai menu dengan mudah.

1. Persediaan awal

Pertama sekali, kami memerlukan kod menu sedia ada untuk pengubahsuaian. Di sini, kami menggunakan kod menu asas PHP sebagai contoh. Menu sampel ini menunjukkan kategori yang berbeza dan subkategori di bawahnya.

<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>

Kod ini menjana menu menegak asas yang kelihatan seperti ini:

Kategori 1

  • Subkategori 1
  • Subkategori 2
  • Subkategori 3

Kategori 2

  • Subkategori 4
  • Subkategori 5

Kod Tambah menu 🎜>

Sekarang mari tambahkan beberapa kod untuk membolehkan menu diubah suai di belakang tabir. Mula-mula, tambah kod berikut di bahagian atas kod menu anda:

<?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;
    }
?>
Kod ini akan mencipta tatasusunan $menu_items yang mengandungi semua pilihan menu semasa. Kemudian, apabila borang diserahkan, ia mengesan data POST, mengekstrak pengecam menu dan pilihan terpilih yang perlu diubah suai dan mengemas kininya ke $menu_items.

Seterusnya, kita perlu menambah kawalan borang pada kod menu untuk membolehkan menu diubah suai. Tambahkan kod berikut di bawah setiap item menu:

<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>
Kod ini akan menambah senarai pilih dan butang hantar di bawah setiap item menu. Senarai pilihan akan menyenaraikan semua subkategori di bawah kategori ini, dan pengguna boleh memilih subkategori untuk ditambahkan pada item menu. Apabila pengguna mengklik butang hantar, borang diserahkan dan kod PHP dalam kod di atas dilaksanakan untuk mengemas kini item menu.

3. Memproses operasi menu yang diubah suai

Kini, apabila pengguna menyerahkan borang dan mengubah suai item menu, apakah operasi yang perlu kami lakukan? Sebagai contoh, kita boleh menyimpan item menu ke pangkalan data, atau mengeluarkannya ke fail konfigurasi, atau mengemas kini semula item menu secara langsung dalam kod menu.

Di sini kami menganggap anda ingin mengeksport menu anda yang diubah suai terus ke tapak web. Anda boleh mengeluarkan menu yang diubah suai terus dalam kod PHP anda. Untuk melakukan ini, tambah kod berikut pada penghujung kod menu:

<ul>
    <?php
        foreach ($menu_items as $category => $subcategories) {
            echo '<li>' . $category . '<ul>';
            foreach ($subcategories as $subcategory) {
                echo '<li>' . $subcategory . '</li>';
            }
            echo '</ul></li>';
        }
    ?>
</ul>
Ini akan menggelung melalui menu yang diubah suai dan memaparkannya di tapak web.

4. Ringkasan

Dalam artikel ini, kami memperkenalkan cara mengubah suai menu tersuai PHP dengan menambahkan kod. Kami menunjukkan cara menggunakan borang untuk mengendalikan penambahan dan pengubahsuaian item menu, dan kami menunjukkan cara untuk mengeluarkan pilihan yang diubah suai dalam kod menu. Semoga artikel ini bermanfaat kepada anda.

Atas ialah kandungan terperinci php pengubahsuaian menu tersuai. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn