php查询数据,数组和对象的二种情况
发现查询返回数据,有时是数组、有时是对象,对数组、对象进行总结
错误
- 在数组中使用:$arr->openid
Trying to get property 'openid' of non-object- 在对象中使用:$obj["openid"]
Cannot use object of type XXX as array原生查询(thinkphp Db)
重要
在使用原生查询find、select时,返回结果为,一维数组,二维数组
$req = $this->Db('hwm_employee','gyg_info')->where("openid",$data['openid'])->find();
$reqs = $this->Db('hwm_employee','gyg_info')->select();
return commonReturn(1,"ok",
[
"data" => $req,
"reqs" => $reqs,
"datadata" => $req['openid'],
"reqsdata" => $reqs[0]["phone"]
]);原生查询,返回是数组,使用 [""] 处理
ORM模型
重要
在使用ORM模型 find,select 时,返回 对象,多层对象
$employ = new Employee();
$modelFind = $employ->where("openid",$data["openid"])->find();
$modelSelect = $employ->select();
return commonReturn(1,"ok",
[
"modelFind" => $modelFind,
"modelFindDate"=> $modelFind->openid,
"modelSelect" => $modelSelect,
"modelSelectopenid"=> $modelSelect[0]->phone]
]
);模型查询,返回是对象,使用 -> 处理
版权所有
版权归属:念宇
