我在 laravel 11 中有收集数据
$data=Collection::make([
['id'=>1,'name'=>'Akta Jual Beli'],
['id'=>2,'name'=>'Akta Hibah'],
['id'=>3,'name'=>'Sertifikat'],
['id'=>4,'name'=>'Surat Perjanjian'],
['id'=>99,'name'=>'Lainnya']
]);
我想使用 foreach 显示名称
这是我在 Blade 中的代码
@foreach($data as $r)
{{ $r->name }}<br>
@endforeach
但是错误,出了什么问题
Attempt to read property "name" on array
除了转换为对象。
data_get()
对于数组和对象可以以相同的方式使用。
$data = collect([
['id' => 1, 'name' => 'Akta Jual Beli'],
(object) ['id' => 2, 'name' => 'Akta Hibah'],
new class {
public int $id = 3;
public string $name = 'Sertifikat';
},
]);
foreach ($data as $r) {
dump(data_get($r, 'name'));
}