0

我只是不明白,我有这样的代码:

$this->ci->db->select('liked_posts, liked_comments');       
$q = $this->ci->db->get_where('users_fav', array('usr_id' => $this->_usrId));
$result = $q->result_array();

当我像往常一样尝试将它放入 foreach 循环时.. 它只是没有工作.. 因为在 $result 我有一个数组,其中存储了另外 2 个数组(表字段),以便在 foreach 循环中工作它看起来像这样:

foreach($result[0] as $value)

不是:

foreach($result as $value)

我一直在寻找我的错误......也许我真的做错了什么......或者它是一个错误?

编辑: print_r($result);

Array
(
    [0] => Array
        (
            [liked_posts] => a:0:{}
            [liked_comments] => a:0:{}
        )

)

编辑2:

但不应该是这样的:

Array
            (
                [liked_posts] => a:0:{}
                [liked_comments] => a:0:{}
            )

?? 还是我开始发疯了???

编辑3: 我的错......我现在意识到......我快疯了......今天完成了太多工作......最好去睡觉:D对不起,伙计们

4

2 回答 2

2

所以你可以这样做

foreach($result as $value)
{
    echo $value['fav_posts'];
}

没问题。

于 2013-09-19T14:13:02.410 回答
0

使用时,$result = $q->result_array();您将获得一个多维数组,就像现在一样。:

foreach( $resuls as $key => $each ){
    echo "result : ".$each['column_name'];
}

但是如果您只提取了一行,您可能会使用$result = $q->row_array();它将返回一个单维数组。你可以像这样直接使用:

echo $results['column_name'];
于 2013-09-19T14:18:07.487 回答