php - 我不能用我的变量从我的数组中选择一个元素
问题描述
我需要你的帮助。我正在尝试从我的数组中提取一些值,但我做不到。
这是我的控制器:
$initiated = \App\Invitation::where('inviter_id', Sentinel::getUser()->id)->get();
这是我的观点:
{{$initiated['id']}} // undefined index error
如果我尝试使用{{$initiated->id}}
未定义的属性: Illuminate\Database\Eloquent\Collection::$id
这是我的数组:
[{"id":578,"inviter_id":"545","target_id":"542","timestamp":"0","accepted":"1","read":"0"},{"id":606,"inviter_id":"504","target_id":"542","timestamp":"0","accepted":"1","read":"0"},{"id":608,"inviter_id":"548","target_id":"542","timestamp":"0","accepted":"1","read":"0"},{"id":613,"inviter_id":"553","target_id":"542","timestamp":"0","accepted":"1","read":"0"}]
所以,我需要从中挑选所有的身份证。
解决方案
使用此查询,您正在检索一个集合,并且集合是一个可迭代对象,因此,在您的视图中,您必须对其进行迭代才能获取id
集合中每个模型的。
<!-- In your view -->
@foreach($initiated as $record)
{{ $record->id }}
@endforeach
如果您只需要获取 id 使用该pluck
方法
$initiated = \App\Invitation::where('inviter_id', Sentinel::getUser()->id)->pluck('id);
我使用了对象表示法,因为集合中充满了Invitation
对象。但是数组符号 ( $record['id']
) 也可以使用,因为每个模型都可以转换为数组。
推荐阅读
- c# - C# 抛出然后继续返回
- node.js - 如何从 Node 中的块中提取 From、To、Subject
- angular - NgSwitch - 如何通过单击按钮禁用其他按钮
- mysql - JPQL 未在服务器上运行
- angular - 构建 Angular 库时是否可以使用自定义 Webpack 配置?
- shell - 使用`sed`包装字符串
- php - Symfony Messenger 中没有配置处理程序
- android-webview - 动态图像无法加载,显示为 text/html MIME 类型,修复 webview?
- django - Django url 渲染
- flutter - 如果值等于其他值,则 Dart 删除项目表单列表