Kohana 2.3.4:MySQL查询到JSON

时间:2015-06-09 04:46:30

标签: mysql json kohana kohana-2

我在Kohana 2.3.4管理一个项目,我需要为我的android后端创建一个API。我正在做的是在我的模型上发送一个返回$result的查询。

$query = "select product.deal_id,product.deal_key,p..."

$result = $this->db->query($query);

我不确定$result是对象还是数组这包含4行8列。我需要将$ result更改为json格式。我目前通过回应来做这件事。

echo json_encode($result);

这会返回一个空的json {}

我可以通过迭代$result

在我的视图中使用相同的查询
foreach ($result as $h){
        echo $h->main_key;
}

我这样做是对,还是我的$result在这个连接上没有行?

1 个答案:

答案 0 :(得分:3)

我发现我使用Kohana调试来了解我的result是对象还是数组。在调用以下

之后
echo Kohana::debug($result);

我发现它是一个对象,因此在转换为json对象时是空结果。我还尝试使用mysql_fetch_assoc获取一个关联数组,它实际上需要一个mysql查询对象。这样做了  不起作用,因为我的ORM对象创建了对象。然后我通过调用

解决了这个问题
$result = $this->db->query($query)->as_array();

这返回了一个数组并解决了我的问题。