【问题标题】:How to fetch array from mysqli_fetch_assoc?如何从 mysqli_fetch_assoc 中获取数组?
【发布时间】:2011-05-12 11:22:02
【问题描述】:

我的方法通过 mysqli_fetch_assoc 返回一个答案数组。我尝试根据索引提取答案。结果与预期不符。我会得到相同的答案(应该是三个答案)。

方法:

function getAnswers($id_question)
{
    $sql = 'SELECT * FROM answers WHERE question_id = '. $id_question;

    $this->db->query($sql);
    while ($answers = $this->db->fetchAssoc())
    {
        return $answers;
    }
}

使用:

$answers = getAnswers(1);
foreach($answers as $a)
{
    echo $a['answer'];
}
echo '<pre>';
print_r($answers);
echo '</pre>';

出来:

11a1
Array
(
    [id_answer] => 1
    [question_id] => 1
    [answer] => answer 1
    [truth] => 1
)

【问题讨论】:

    标签: php arrays mysqli


    【解决方案1】:

    您只返回第一组。您必须将数据打包到一个数组中,然后返回该数组:

    function getAnswers($id_question)
    {
        $sql = 'SELECT * FROM answers WHERE question_id = '. $id_question;
    
        $this->db->query($sql);
        $data = array();
        while ($answers = $this->db->fetchAssoc())
        {
            $data[] = $answers;
        }
    
        return $data;
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-11-24
      • 1970-01-01
      • 1970-01-01
      • 2016-07-23
      • 2013-02-24
      • 2019-02-22
      • 1970-01-01
      相关资源
      最近更新 更多