php - 使用 Codeigniter 的数据库响应中的 "Nested"数组

标签 php mysql arrays json codeigniter

我正在尝试在从数据库返回的对象中创建一个“嵌套”数组。

我可以为每个“事物”添加多个脚注。

这是我目前得到的结果:

JSON

{
"data": [{
        "id": "123",
        "type": "foo",
        "color": "bar",
        "footnote_id": "1",
        "footnote_text": " Footnote one"
    }]
}    

这是我尝试生成的结果:

JSON

{
"data": [{
        "id": "123",
        "type": "foo",
        "color": "bar",
        "footnotes": [{
                "footnote_id": "1",
                "footnote_text": " Footnote one"
            },
            {
                "footnote_id": "2",
                "footnote_text": "Footnote two"
            }]
    }]
}

我有一个footnotes 表,其中包含各种脚注(footnote_id 等)。 我有一个 type 表,里面有各种各样的东西(type_id 等等)。 我还有一个只有两列的 type_footnotes 表:type_idfootnote_id

我不确定如何创建响应对象的 footnotes 属性 - 然后在该数组中显示结果。

感谢您的宝贵时间!

编辑

这是查询 - 我想我也发布了这个。抱歉。

PHP

 public function get_thing($type_id) {
    $this->db->select('type.type_id, type.type, type.type_color');

    $this->db->join('footnotes', 'footnotes.footnote_id, footnotes.footnote_text');
    $this->db->join('type_footnotes, type_footnotes.type_id = type.type_id');

    $query = $this->db->get_where('type', array('type.type_id' => $type_id), 1);

    if ($query->num_rows() > 0) {
        return $query->result();
    }
}

最佳答案

取消限制,并在此处发布您得到的结果:

$query = $this->db->get_where('type', array('type.type_id' => $type_id));

关于php - 使用 Codeigniter 的数据库响应中的 "Nested"数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27661327/

相关文章:

php - PayUMoney 集成重定向到本地主机

php - PHP SREG 中的 JanRain OpenID?

C++ 全局数组和非全局数组之间的区别(Stackoverflow 异常)

javascript - 创建图片库时如何解决全局变量问题?

c++ - 创建一个可以是多种类型的 C++ 数组

php - 如何在 Php 中使用 Php?

php - 等效于php python的二维数组插入

php - 如果 mysql 中存在记录,如何构建 php 代码以填充表单中的 280 个字段

php - OpenTBS 能否用于生成多张包含随机数量订单项目的发票?

不允许 MySQL 主机 '::1' 或 '127.0.0.1' 连接到此 MySQL 服务器