Php Laravel通过视图发送数据

Php Laravel通过视图发送数据,php,laravel,Php,Laravel,我正在和一个拉威尔一起为一个学校项目工作,我在解决这个问题上遇到了困难。代码正是我从另一个脚本中得到的,我已经仔细检查了代码 功能代码: $modules = Module::all(); $id = Auth::user()->id; $array = array(); foreach($modules as $module) { $questions = Question::where('m_id', $module['id'])->count(); $answer

我正在和一个拉威尔一起为一个学校项目工作,我在解决这个问题上遇到了困难。代码正是我从另一个脚本中得到的,我已经仔细检查了代码

功能代码:

$modules = Module::all();
$id = Auth::user()->id;

$array = array();

foreach($modules as $module) {

  $questions = Question::where('m_id', $module['id'])->count();
  $answers = Answer::where('m_id', $module['id'])->where('user_id', $id)->where('correct', 1)->count();

  $percentage = ($answers / $questions) * 100;

  array_push($array, array(
    'name' => $module->name,
    'description' => $module->description,
    'precentage' => $percentage
  ));
}

print_r($array);

return View::make('hello')->with('modules', $array);
在print\r($array)函数中,我得到的正是我想要在视图中得到的所有东西。但问题是我没有得到任何东西,我正在用{{Session::has('modules')}检查它,它返回false(未设置)


有什么解决方法吗?

为什么要检查
模块
钥匙插入会话?您不是在会话中设置它,而是将该数据与视图一起返回。鉴于上述代码,您应该能够在视图中执行类似操作:

@foreach($modules as $module)
    {{ $module['name'] }}
@endforeach
为了使
Session::has('modules')
返回true,您需要在返回视图之前执行以下操作:

Session::put('modules', $array);

此函数位于何处…?请尝试以下操作:print_r(输入::get('modules');这个函数位于HomeController中,但不明白为什么会有不同。是的,好吧,foreach方法不起作用,我尝试了几种方法来获取数据。编辑好你的代码工作!我用了$module->name而不是$module['name'],天哪!但是谢谢你,伙计。