控制器代码:
public function claims($id)
{
$claims = Claim::whereBetween('created_at', [
'2016-03-01',
'2016-03-31'
])->get();
return View::make('pdfs.view', $claims);
}
在我看来,我收到的消息是$claims
是一个未定义的变量。
我知道使用单个数组我可以通过callig一个同名的变量来访问数组属性。即$claims['id]
只需$ id
但是我不能用多维数组做到这一点,因为$claims
不存在
另外,我无法使用->with('claims' $claims)
将数据作为对象传递,因为我正在生成PDF并且库不支持该功能。
有关我如何访问数据的任何想法?
答案 0 :(得分:2)
因为您的数组不包含key
return View::make('pdfs.view', $claims);
相反,您可以像{/ p>一样使用compact
return View::make('pdfs.view', compact('claims'));
或者您需要在某种程度上将您的值分配给相同的键,如
$claims['claims'] = Claim::whereBetween('created_at', [
'2016-03-01',
'2016-03-31'
])->get();
return View::make('pdfs.view', $claims);
或者你可以简单地使用Laravels方式使用with
变量,如
return View::make('pdfs.view')->withClaims($claims);
注意:使用
compact
时,请确保您的变量名称必须与您的字符串匹配