当前位置: 首页 > 面试题库 >

PDO遍历和打印fetchAll

万俟穆冉
2023-03-14
问题内容

我无法从fetchAll获取数据以选择性打印。

在普通的mysql中,我这样做:

$rs = mysql_query($sql);
while ($row = mysql_fetch_array($rs)){
   $id = $row['id'];
   $n = $row['n'];
   $k = $row['k'];
}

在PDO中,我遇到了麻烦。我绑定了参数,然后将获取的数据保存到上述的$ rs中,目的是以相同的方式循环遍历它。

$sth->execute();
$rs = $query->fetchAll();

现在出现了麻烦部分。我如何在PDO上做些什么来获得与上述while循环匹配的东西?我知道我可以使用print_r()或dump_var,但这不是我想要的。我需要做以前可以使用普通mysql进行的操作,例如根据需要分别获取$
id,$ n,$ k。可能吗?

提前致谢..


问题答案:

它应该是

while ($row = $query->fetch(PDO::FETCH_ASSOC)) {
  $id = $row['id'];
  $n = $row['n'];
  $k = $row['k'];
}

如果你坚持的fetchAll

$results = $query->fetchAll(PDO::FETCH_ASSOC);
foreach($results as $row) {
   $id = $row['id'];
   $n = $row['n'];
   $k = $row['k'];
}

PDO::FETCH_ASSOC 仅获取列名,并省略数字索引。



 类似资料:
  • 问题内容: 如果您能帮助回答以下问题,我将不胜感激: 我已经使用Java以非常标准的方式创建了一个自定义链接列表。以下是我的课程: 我试图打印值我已经插入到列表如下 但是我从IDE获得的输出是 为什么打印出引用,而不打印出诸如bat,ant,rat …之类的字符串的实际值? 如果我想打印出实际值,那该怎么办? 非常感谢你 问题答案: 您的课程已经为您创建了! 将打印

  • 本文向大家介绍C#使用前序遍历、中序遍历和后序遍历打印二叉树的方法,包括了C#使用前序遍历、中序遍历和后序遍历打印二叉树的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了C#使用前序遍历、中序遍历和后序遍历打印二叉树的方法。分享给大家供大家参考。具体实现方法如下: 希望本文所述对大家的C#程序设计有所帮助。

  • //执行顺序遍历的递归方法

  • 我的数组正在加载,并且正在按计划(按照它们在文件中出现的顺序)将卡打印出来。当我尝试在单独的方法中循环遍历arraylist以检查数据是否存在时,它只打印最后一个对象而不是每个对象。有人能告诉我为什么吗? 加载法 和getAll()方法 运行时,它只打印出.txt文件中的最后一张牌“KS”(黑桃之王)。有人能告诉我为什么会这样吗? 谢谢 }

  • 我有一个elasticsearch查询结果为 “顶部”:{ “命中”:{ {“_index”:“automatch_testing”,“_type”:“temp_135”,“_id”:“avu7i0nlxk6g_oqhu-ay”,“_score”:2.2237754,“_source”:{“t_pacs_id”:“28”,“t_id”:“60”,“matching”:“mo”,“uicriteri

  • 我必须使用层次顺序遍历打印二叉树的节点,但以螺旋形式,即不同层次的节点应该以螺旋形式打印。 例如:如果树看起来像: 输出应为 10 5 20 25 15 6 4。 我使用的算法很简单,只是级别顺序遍历的一个小变化。我只是取了一个变量p.if变量等于1,而不是从左到右打印给定级别的顺序,如果是-1,则从右到左打印。 我得到了答案,但在歪斜树的情况下,最坏的情况复杂度可能是O(n^2)。 这个任务能有