【问题标题】:laravel controller compact doesn't worklaravel 控制器紧凑型不起作用
【发布时间】:2017-01-26 17:51:29
【问题描述】:

在我的路线中:

Route::get('/about','PagesController@about');

在 PagesController 中:

public function about()
{
    $people=['Taylor','Matt','Jeffrey'];
    return view('pages.about',compact($people));
}

如果我使用

return view('pages.about',['people'=> $people]);

运行正常。

控制器没有将数组传递给视图,为什么?

【问题讨论】:

标签: php laravel


【解决方案1】:

使用 compact('people')

如果您是初学者,请查看 laracasts 视频系列,以更好地了解 Laravel 框架。

【讨论】:

    【解决方案2】:

    删除$ 内的compact 函数,如compact('people')。这将解决您的问题。

    compact() 不是 Laravel 函数。这是一个PHP函数。它创建一个包含变量及其值的数组。

    例如,假设您有以下变量。

    $name = 'Jon Snow';
    $dad = 'Rhaegar Targaryen';
    $mom = 'Lyanna Stark';
    

    如果您将它们放在compact() 中,如下所示,

    $thePrinceThatWasPromised = compact(['name', 'dad', 'mom']);
    

    您将获得分配给$thePrinceThatWasPromised 的以下数组。

    [
        'name' => 'Jon Snow',
        'dad' => 'Rhaegar Targaryen',
        'mom' => 'Lyanna Stark'
    ]
    

    欲了解更多信息,请访问php manual

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-02-14
      • 2017-02-08
      • 2013-03-28
      • 1970-01-01
      • 2015-11-24
      • 2015-09-21
      • 1970-01-01
      相关资源
      最近更新 更多