循环遍历数组并创建一个新的查询结果数组PHP

时间:2014-01-17 18:51:04

标签: php arrays

我有一个PHP数组对象,可以包含零个或多个这样的值:

Array
(
[0] => stdClass Object
    (
        [id] => dkgasO05P2XpfyWW
    )

[1] => stdClass Object
    (
        [id] => LzE6G9UQIShOUoKq
    )

)

我想遍历此数组中的每个值,并在查询中使用id,该查询返回如下所示的对象:

Array
(
    [0] => stdClass Object
        (
            [id] => taWPlKGXHR5Y03cc
            [title] => Test Document Title
            [filename] => test.docx
        )

)

在循环的每次迭代中,查询以数组对象的形式返回一个结果。我想将对象添加到数组对象,在这种情况下看起来像这样:

Array
(
    [0] => stdClass Object
        (
            [id] => dkgasO05P2XpfyWW
            [title] => Test Document Title 0
            [filename] => test0.docx
        )
    [1] => stdClass Object
        (
            [id] => LzE6G9UQIShOUoKq
            [title] => Test Document Title 1
            [filename] => test1.docx
        )
)

查询已编写并正在工作,我知道我需要使用foreach循环来迭代ID数组,但我不知道如何设置它以便最终结果是列出的数组对象就在上面。我正在使用PHP& Codeigniter完成所有这些。

我到目前为止的foreach代码是这样的:

$child = array();
foreach ($id as $row) {
        $child = $this->users_model->get_docnfo($id);
}

感谢阅读!

1 个答案:

答案 0 :(得分:1)

您应该尝试

$child = array();
foreach ($id as $row) {
        $child[] = $this->users_model->get_docnfo($row->id);
}

请注意$row->id而不是$id以及$child之后的括号。