mysqli_fetch_array while循环列

应该很基本,但是我无法使它正常工作。我有以下代码可以遍历mysqli查询:


while($row = mysqli_fetch_array($result)) {

    $posts[] = $row['post_id'].$row['post_title'].$row['content'];

}

它可以工作并返回:


变量#1 :(数组,3个元素)↵0(字符串):“ 4testtest”(9个字符)1(字符串):“ 1Hello world!Welcome to WordPress。这是您的第一篇文章。编辑或删除它,然后开始写博客!” (99个字符)2(字符串):“ 2Sample Page这是一个示例页面。它与博客文章不同,因为它将停留在一个地方并显示在您的网站导航中(在大多数主题中)。” (161个字符)


问题在于它将所有三个列都放在一列中,所以我不能单独访问它们。


例如:


0(字符串):“ 4testtest”(9个字符)


应分为4,测试,测试


当我这样做时:


while($row = mysqli_fetch_array($result)) {             

    $posts['post_id'] = $row['post_id'];

    $posts['post_title'] = $row['post_title'];

    $posts['type'] = $row['type'];

    $posts['author'] = $row['author'];  

}   

它只输出1行,而不是全部3行…


任何帮助是极大的赞赏!



慕斯709654
浏览 738回答 3
3回答

长风秋雁

从MySQL获取所有值:&nbsp; &nbsp; $post = array();&nbsp; &nbsp; while($row = mysql_fetch_assoc($result))&nbsp; &nbsp; {&nbsp; &nbsp; &nbsp; &nbsp; $posts[] = $row;&nbsp; &nbsp; }然后,获取每个值:<?php&nbsp;&nbsp; &nbsp; &nbsp;foreach ($posts as $row)&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; {&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; foreach ($row as $element)&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; {&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; echo $element."<br>";&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; }&nbsp; &nbsp; &nbsp; &nbsp; }?>回显值。或者从$ post变量中获取每个元素

慕娘9325324

这是您的解决方案。$x = 0;while($row = mysqli_fetch_array($result)) {&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp; &nbsp; $posts[$x]['post_id'] = $row['post_id'];&nbsp; &nbsp; $posts[$x]['post_title'] = $row['post_title'];&nbsp; &nbsp; $posts[$x]['type'] = $row['type'];&nbsp; &nbsp; $posts[$x]['author'] = $row['author'];&nbsp; &nbsp; $x++;}
打开App,查看更多内容
随时随地看视频慕课网APP