Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/275.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Zend Framework 2导航子菜单(顶部菜单)_Php_Twitter Bootstrap_Frameworks_Zend Framework2 - Fatal编程技术网

Php Zend Framework 2导航子菜单(顶部菜单)

Php Zend Framework 2导航子菜单(顶部菜单),php,twitter-bootstrap,frameworks,zend-framework2,Php,Twitter Bootstrap,Frameworks,Zend Framework2,我正在使用ZF2和bootstrap构建一个菜单,我已经有了这种菜单: Home | Users | Options 但现在我需要子菜单,但我找不到这样做的方法。我需要像悬停菜单项(例如:用户),然后显示“列表”,“添加”,“编辑” 我真的很感激任何帮助 谢谢您可以通过局部视图来实现这一点 在配置文件(例如config/autoload/global.php)中: 在布局文件中,例如view/layout/layout.phtml: 局部视图,此处为view/partial/menu.ph

我正在使用ZF2和bootstrap构建一个菜单,我已经有了这种菜单:

Home | Users | Options
但现在我需要子菜单,但我找不到这样做的方法。我需要像悬停菜单项(例如:用户),然后显示“列表”,“添加”,“编辑”

我真的很感激任何帮助


谢谢

您可以通过局部视图来实现这一点

在配置文件(例如config/autoload/global.php)中:

在布局文件中,例如view/layout/layout.phtml:


局部视图,此处为view/partial/menu.phtml:

如果您需要CSS示例,可以在以下答案中找到:

return array(

    // Your others config arrays

    'navigation' => array(
        'default' => array(
            array(
                'label' => 'Home',
                'route' => 'home',
            ),
            array(
                'label' => 'User',
                'route' => 'user',
                'pages' => array(
                    array(
                        'label' => 'List',
                        'route' => 'list',
                    ),
                    array(
                        'label' => 'Add',
                        'route' => 'add',
                    ),
                    array(
                        'label' => 'Edit',
                        'route' => 'edit',
                    ),
                ),
            ),
            array(
                'label' => 'Options',
                'route' => 'options',
            ),
        )
    )
);
<nav>
    <?php
    echo $this->navigation('navigation')
              ->menu()
              ->setPartial('partial/menu')
              ->render();
    ?>
</nav>
<ul>
<?php
foreach ($this->container as $page)
{
    $hasChildren = $page->hasPages();
    if( ! $hasChildren)
    {
        ?>
        <li><a href="<?php echo $page->getHref(); ?>"><?php echo $page->getLabel(); ?></a></li>
        <?php
    }
    else
    {
        ?>
        <li>
            <a href="<?php echo $page->getHref(); ?>"><?php echo $page->getLabel(); ?></a>
            <ul>
            <?php
            foreach($page->getPages() as $child)
            {
                ?>
                <li><a href="<?php echo $child->getHref(); ?>"><?php echo $child->getLabel(); ?></a></li>
                <?php
            }
            ?>
            </ul>
        </li>
        <?php
    }
}
?>
</ul>