【问题标题】:Laravel foreach loop is not working in a viewLaravel foreach 循环在视图中不起作用
【发布时间】:2014-10-12 06:38:21
【问题描述】:

我的控制器

public function showWelcome()
{
        $data = Category::select();
        return View::make('hello',$data);

}

控制器结果数组

array(3) {
  [0]=>
  object(stdClass)#137 (4) {
    ["id"]=>
    int(1)
    ["category_name"]=>
    string(8) "everyone"
    ["category_image"]=>
    string(36) "7e14fecb5b45941dd9bcff3497c57d1a.png"
    ["start_date"]=>
    string(10) "2014-09-10"
  }
  [1]=>
  object(stdClass)#138 (4) {
    ["id"]=>
    int(2)
    ["category_name"]=>
    string(12) "motivational"
    ["category_image"]=>
    string(36) "99b8dfff667da7a7e9e39e514e3342bd.png"
    ["start_date"]=>
    string(10) "2014-09-09"
  }
  [2]=>
  object(stdClass)#139 (4) {
    ["id"]=>
    int(3)
    ["category_name"]=>
    string(4) "racy"
    ["category_image"]=>
    string(36) "3a213b108c30184a3f416239473a3880.png"
    ["start_date"]=>
    string(10) "2014-09-10"
  }
}

我的看法

@foreach($data as $fetch)
    {{ $fetch->id }}
@endforeach

我试图在视图中显示我的数据数组值,但不起作用。显示错误

未定义变量:data(查看:C:\Users\shanto\my-project\app\views\hello.blade.php)

我是 laravel 的新手。我无法理解我的错误。

【问题讨论】:

    标签: php laravel foreach


    【解决方案1】:

    在你的控制器函数中

    return View::make('hello')->with(array('data'=>$data));
    

    由于您的控制器在数据数组中发送值,从而使它们成为视图文件的变量。您需要在数组中包含$data 并发送到查看。

    【讨论】:

      【解决方案2】:

      改变

      public function showWelcome()
      {
              $data = Category::select();
              return View::make('hello',$data);
      }
      

      public function showWelcome()
      {
              $data = Category::select();
              return View::make('hello')->with('data', $data);
      }
      

      或者你可以这样做

      return View::make('hello')->withData($data);
      

      【讨论】:

        猜你喜欢
        • 2014-06-11
        • 2019-02-28
        • 1970-01-01
        • 2020-05-27
        • 2014-04-28
        • 1970-01-01
        • 1970-01-01
        • 2017-05-28
        • 1970-01-01
        相关资源
        最近更新 更多