首页 > 解决方案 > 在 Laravel 视图中添加多个变量

问题描述

$header = DB::select("SELECT COLUMN_NAME 
    FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'tableOne'");
$secheader = DB::select("SELECT COLUMN_NAME 
    FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'tableTwo'");

$variables = DB::table('tableThird')->get();
$variables = json_decode(json_encode($variables, true));
$tbHeading = json_decode(json_encode($header, true)); //json object

return view('admin/crosstabdata', compact('secheader','tbHeading','variables'));

当我打印所有三个变量以查看 ( crosstabdata.blade.php) 文件时,它说:

secheader 变量不存在。

标签: laravellaravel-blade

解决方案


您的代码应该可以工作。也许问题出在视图中。

作为替代方案,您可以将变量传递给您的视图,如下所示:

$secheader = /** ... */;
$variables = /** ... */;
$tbHeading = /** ... */;

return view('admin.crosstabdata')
           ->with('secheader', $secheader)
           ->with('variables', $variables)
           ->with('tbHeading', $tbHeading);

然后在您的视图中,您可以像$secheader, $variables&一样访问它们$tbHeading


推荐阅读