lumen model层查询出来的对象全部转化为数组

laravel/lumen框架model层查询出来的对象转化数组

最近项目用到lumen写接口,所以看了一下手册,发现lumen已经更新到(6.X)了,

以前也用过laravel5.2感觉差距还是挺大的,话不多说,贴代码:

model层代码

//获取学生信息
function getCandInfo($where, $clomun = '*', $order = '', $orderType = 'asc')
{
    $orgObject = DB::table($this->tableName)->select($clomun);
    if (!empty($where)) {
        $orgObject->where($where);
    }
    if (!empty($order)) {
        $orgObject->orderBy($order, $orderType);
    }
    $data = $orgObject->get()->map(function ($value) {
        return (array)$value;
    })->toArray();
    return $data;
}

toArray的结果是这样的(最外面一层皮是数组,里面是对象)

其中手册上是说,toArray() 已经是将对象转化成了数组,但它只是转化了最外面一层,里面如果调用的话还是得这这样调用,例如:

$candData = candModel::getCandInfo();

$one = $candData[0]->cand_id

cand_id是数据库的字段,感觉这样太麻烦

所以加上了   map(function ($value) { return (array)$value; })这样返回的数据就是纯正的数组了

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章