Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/258.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 在Laravel中传递控制器的默认数据_Php_Laravel - Fatal编程技术网

Php 在Laravel中传递控制器的默认数据

Php 在Laravel中传递控制器的默认数据,php,laravel,Php,Laravel,我想从Laravel中的数组构建一个菜单。我目前正在做的是将数组放在一个视图中 $menu = ['home', 'users' => ['create users' , 'update user', 'activity log']]; 然后循环通过它生成菜单: <section> <!-- Left Nav Section --> <ul class="left"> <li class="divider">

我想从Laravel中的数组构建一个菜单。我目前正在做的是将数组放在一个视图中

$menu = ['home', 'users' => ['create users' , 'update user', 'activity log']];
然后循环通过它生成菜单:

<section>
    <!-- Left Nav Section -->
    <ul class="left">
        <li class="divider"></li>
        @foreach($menu as $key => $nav)
            <li class="has-dropdown">
                <a href="#" class="active">{{ $key }}</a>
                <ul class="dropdown">
                    @foreach($nav as $subnav)
                        <li>
                            <a href="">{{ $subnav }}</a>
                        </li>
                    @endforeach
                </ul>
            </li>
        @endforeach
    </ul>
</section>

但我想这不是它的工作原理。我很感激你能告诉我怎么做。提前感谢

看看view Composer:

如果使用控制器布局,则可以从构造函数中将数据绑定到布局。只需确保首先调用父构造函数,以便正确实例化布局

public function __construct()
{
    parent::__construct();

    $this->layout->menu = ['home', 'users' => ['create users' , 'update user', 'activity log']];
}
这将把一个
$菜单
变量绑定到布局,并且也将可用于刀片
@包括

的任何嵌套视图,以进行救援


每次渲染视图之前都会执行这些命令,因此您可以使用它将标准数据传递给它们。

我从未使用过刀片,但您应该检查刀片布局:执行此操作时,我从空值创建默认对象。您可能需要使用with()<代码>$this->layout->with('menu',[])
public function __construct()
{
    parent::__construct();

    $this->layout->menu = ['home', 'users' => ['create users' , 'update user', 'activity log']];
}