Php 在laravel blade中创建动态表

Php 在laravel blade中创建动态表,php,mysql,laravel,Php,Mysql,Laravel,我在动态创建表时遇到问题 基本上,我是通过以下语句从数据库中获取数据的: $data = User::all(); $columns = DB::getSchemaBuilder()->getColumnListing('users'); return view('framework/list', compact('data', 'columns')); 之后,我通过以下语句获取了数据库表的属性名称: $data = User::all(); $columns = DB::ge

我在动态创建表时遇到问题

基本上,我是通过以下语句从数据库中获取数据的:

$data = User::all();
$columns = DB::getSchemaBuilder()->getColumnListing('users');  
return view('framework/list', compact('data', 'columns'));
之后,我通过以下语句获取了数据库表的属性名称:

$data = User::all();
$columns = DB::getSchemaBuilder()->getColumnListing('users');  
return view('framework/list', compact('data', 'columns'));
之后,通过以下语句将$data和
$columns
发送到视图:

$data = User::all();
$columns = DB::getSchemaBuilder()->getColumnListing('users');  
return view('framework/list', compact('data', 'columns'));
在我看来,即list.blade.php,两个foreach循环用于创建
,如下所示:

@foreach($data as $singleUser)
<tr>
    @foreach($columns as $cols)
    <td>

        {{$singleUser->$cols}}
        {{Blade::compileString('"'.'$singleUser->'."$cols".'"')}}
                                     
    </td>
    @endforeach
</tr>
@endforeach
@foreach($singleUser形式的数据)
@foreach($列作为$cols)
{{$singleUser->$cols}
{{Blade::compileString('''.'$singleUser->'.'$cols'.'''')}
@endforeach
@endforeach
但是我得到一个异常,而不是打印值(两个语句用于打印值,但它们都给出相同的异常)

(3/3)错误异常

正在尝试获取非对象的属性(视图:/home/srmd/biniHR/resources/views/layouts/key.blade.php)(视图:/home/srmd/resources/views/layouts/key.blade.php)


对于动态调用,您必须使用:
{{$singleUser->{$cols}}}

这种“用大括号括起来”的技巧在PHP中非常有用 由变量引起的歧义

您可以将userobject转换为数组并对其进行迭代,而不是获取数据库值:

@foreach($data as $singleUser)
<tr>
    @foreach($singleUser->toArray() as $key => $value)
    <td>
        Key {{ $key }}
        Value {{ $value }}
        Value {{ $singleUser->toArray()[$key] }} //equal to first try
        Value {{ $singleUser->{$key} }} // not sure if it works, but it should
    </td>
    @endforeach
</tr>
@endforeach
@foreach($singleUser形式的数据)
@foreach($singleUser->toArray()作为$key=>$value)
密钥{{$Key}}
值{{$Value}}
值{{$singleUser->toArray()[$key]}//等于第一次尝试
值{{$singleUser->{$key}}}//不确定它是否有效,但应该有效
@endforeach
@endforeach

Try:
returnview('framework/list')->with('data'=>$data)->with('columns'=>$columns)共享
$data
$columns
的一个元素?Troyer相同issue@user2486不,我想把这两个对象都传递给视图,并针对这些对象进行创建。我正在与我们共享,是否在您的问题中粘贴输出?