How can PHP be used to create dynamic menus that expand only when clicked?

To create dynamic menus that expand only when clicked, you can use PHP to generate the HTML for the menu items and JavaScript to handle the expanding and collapsing functionality. You can create a PHP array with the menu items and their corresponding submenus, then use PHP to loop through the array and output the menu items with appropriate classes and data attributes. Finally, use JavaScript to toggle the visibility of the submenu when a menu item is clicked.

<?php
$menuItems = array(
    'Home' => array(),
    'About' => array(
        'History',
        'Team',
        'Contact'
    ),
    'Services' => array(
        'Web Development',
        'Graphic Design',
        'SEO'
    ),
    'Portfolio' => array(),
    'Contact' => array()
);

echo '<ul class="menu">';
foreach ($menuItems as $menuItem => $subMenu) {
    echo '<li class="menu-item">';
    echo '<a href="#">' . $menuItem . '</a>';
    if (!empty($subMenu)) {
        echo '<ul class="submenu">';
        foreach ($subMenu as $subMenuItem) {
            echo '<li>' . $subMenuItem . '</li>';
        }
        echo '</ul>';
    }
    echo '</li>';
}
echo '</ul>';
?>