为了账号安全,请及时绑定邮箱和手机立即绑定

Laravel Eloquent 如何从数组中获取结果

Laravel Eloquent 如何从数组中获取结果

PHP
子衿沉夜 2021-08-28 09:25:53
我花了几个小时寻找这个。我对 Laravel 非常陌生(来自 CodeIgniter),我正在尝试以 Laravel 的方式做所有事情,而不是在任何地方使用纯 php/sql,除非非常必要。$role_id = Role::select('role_id')                     ->where('type','Admin')                     ->get();     var_dump($role_id);我正在尝试获取 $role_id。var_dump 给了我这个。object(Illuminate\Database\Eloquent\Collection)#249 (1) { ["items":protected]=> array(1) { [0]=> object(App\Role)#252 (26) { ["connection":protected]=> string(5) "mysql" ["table":protected]=> string(5) "roles" ["primaryKey":protected]=> string(2) "id" ["keyType":protected]=> string(3) "int" ["incrementing"]=> bool(true) ["with":protected]=> array(0) { } ["withCount":protected]=> array(0) { } ["perPage":protected]=> int(15) ["exists"]=> bool(true) ["wasRecentlyCreated"]=> bool(false) ["attributes":protected]=> array(1) { ["role_id"]=> int(99) } ["original":protected]=> array(1) { ["role_id"]=> int(99) } ["changes":protected]=> array(0) { } ["casts":protected]=> array(0) { } ["dates":protected]=> array(0) { } ["dateFormat":protected]=> NULL ["appends":protected]=> array(0) { } ["dispatchesEvents":protected]=> array(0) { } ["observables":protected]=> array(0) { } ["relations":protected]=> array(0) { } ["touches":protected]=> array(0) { } ["timestamps"]=> bool(true) ["hidden":protected]=> array(0) { } ["visible":protected]=> array(0) { } ["fillable":protected]=> array(0) { } ["guarded":protected]=> array(1) { [0]=> string(1) "*" } } } }我期望只有一个 mysql 结果行而不是这个。我正在寻找的就是这个["role_id"]=> int(99)。我缺少一个直接获取它的函数,我无法从文档中找到它。$role_id->role_id 给我找不到财产。
查看完整描述

3 回答

?
RISEBY

TA贡献1856条经验 获得超5个赞

您有带有 get 方法的项目。这就是无法访问role_id 的原因。

如果你想要一个记录,你可以使用 first 而不是 get 方法。

你可以使用 dd() 函数。

$role_id = Role::select('role_id')
                ->where('type','Admin')
                ->first();
                dd($role_id);


查看完整回答
反对 回复 2021-08-28
?
泛舟湖上清波郎朗

TA贡献1818条经验 获得超3个赞

使用->first()代替->get()。 get()返回集合。


查看完整回答
反对 回复 2021-08-28
?
红颜莎娜

TA贡献1842条经验 获得超12个赞

这是正确的做法。


$response = Role::select('role_id')

                       ->where('type','Admin')

                       ->first();

        $admin_id = $response->role_id; 


查看完整回答
反对 回复 2021-08-28
  • 3 回答
  • 0 关注
  • 201 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号