繁体   English   中英

如何将MySQL数据库中的数据存储到ID索引的数组中?

[英]How can I store data from MySQL database into array indexed by id?

我将来自MySQL数据库的一些数据存储到一个数组中:

$p = $db->query('SELECT * FROM comments;');
while ($row = $p->fetch(PDO::FETCH_ASSOC)) {
   $commentlist[$row['id']] = $row['text'];
}  


  foreach($commentlist as $key => $value) {
      echo $key;
      echo $value;
  }

现在,我可以访问值idtext 但是我还需要访问值image (这是MySQL数据库中的另一行)。 但是,如果我只有两个可用的元素:键和值,该如何存储呢?

如果需要其他字段,则应将整行存储在$ value中。

但是,PDO超出了所有人的想象。 多亏了具有PDO :: FETCH_UNIQUE修饰符的fetchAll()方法,它可以在一次调用中给您所需的结果:

$commentlist = $db->query('SELECT * FROM comments;')->fetchAll(PDO::FETCH_UNIQUE);

现在您可以遍历评论

foreach($commentlist as $id => $value) {
    echo $id;
    echo $value['text'];
    echo $value['image'];
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM