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

Laravel 中 $object->attribute 和 $object

Laravel 中 $object->attribute 和 $object

PHP
守着一只汪 2021-06-08 13:02:35
我正在 Laravel 中使用 DataTables 进行开发,并尝试手动collect()创建一个对象来创建一个集合。当我将集合推入 DataTable 时,出现问题,我无法用这个调用我的对象$object->attribute.在我得到错误之后,我已经尝试调用一个属性$object['attribute'],并且它运行良好。有人可以让我了解差异以及如何转换$object['attribute']为$object->attribute?这是我创建对象的查询$result = collect();$item = collect([         'row' => ($key+1),         'item_id' => $value->uid,         'item' => $value->nama_item,         'sub_kategori' => $value->sub_jenis_item->sub_jenis_item,         'kategori' => $value->jenis_item->jenis_item,         'gudang_id' => $id_gudang]);$result->push($item);
查看完整描述

3 回答

?
蝴蝶不菲

TA贡献1810条经验 获得超4个赞

访问$object['attribute']手段$object是一个array,访问$object->attribute手段$object是一个object

转换arrayobject

$object = (object) $object;

此外,要转换objectarray

$object = (array) $object;


查看完整回答
反对 回复 2021-06-13
?
森栏

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

你可以试试下面的方法


   $result = collect();

    $item = collect([

        'row' => ($key+1),

        'item_id' => $value->uid,

        'item' => $value->nama_item,

        'sub_kategori' => $value->sub_jenis_item->sub_jenis_item,

        'kategori' => $value->jenis_item->jenis_item,

        'gudang_id' => $id_gudang

     ]

    );

    $result->push($item);


    $resultObj = json_decode($result);


    foreach($resultObj as $obj){

        echo $obj->row;

    }


查看完整回答
反对 回复 2021-06-13
  • 3 回答
  • 0 关注
  • 157 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信