【发布时间】:2019-10-30 03:11:30
【问题描述】:
当我尝试获取对象返回时,我在 Codeignter 中遇到了一个问题,一些控制器代码是
$sql = $this->user_model->userdetail($data);
if ($sql) {
echo json_encode(array(
"status" => "0",
"message" => "",
"data" => $sql
));
exit();
}
型号代码是
function userdetail($data) {
$id = $data["id"];
$sql = "select email, name from user where id='".$id."'";
$query = $this->db->query($sql);
if ($query->num_rows() > 0) {
return $query->result_array();
}
return $query->num_rows();
}
我可以得到结果
{
"status": "0",
"message": "",
"data": [
{
"email": "lily@email.com",
"name": "lily"
}
]
}
这里data是一个数组,但应该是一个对象,上面的结果应该是这样的
{
"status": "0",
"message": "",
"data": {
"email": "lily@email.com",
"name": "lily"
}
}
并且我在模型代码中将return $query->result_array(); 更改为return $query->result_object();,但它不起作用,我该怎么办?非常感谢。
【问题讨论】:
-
试试 $query->result()
-
@Saeed.Gh 试过了,还是一样
-
提供您的结果以及您使用的 Codeigniter 版本
-
@Saeed.Gh v3,顺便说一句,来自文档,resualt()===result_object()
-
result_object() 提供什么?错误/空对象?
标签: php arrays codeigniter object