脚本宝典收集整理的这篇文章主要介绍了php – 提取mysqli查询结果的第n个元素,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
$query=MysqL_query('select id From rank'); for ($i=0; $i<$max; $i++) { $id0[$i] = MysqL_result($query,$i,"id"); $id1[$i] = MysqL_result($query,$i+1,"id"); $id2[$i] = MysqL_result($query,$i+2,"id"); }
我发现用MysqLi达到相同的结果有很多困难;通常我使用函数MysqLi_fetch_assoc($query)获取MysqLi查询的数据,以逐行递归地提取查询结果中的所有记录.
如何获得我需要的结果,即在递归函数的每个循环中提取查询结果的第n,第n,第2个元素?我怎样才能引用id字段的第n个元素?我似乎不可能一次使用一行查询结果…
对不起,如果这个问题看起来很愚蠢,但我正在将使用MysqL_语法制作的旧网站转换为MysqLi_并且即使我尝试引用PHP.net文档(并且当然Stack Overflow知识……)……
编辑(问题已解决):
我按照Jeroen的建议解决了我的问题:fetch_all函数不可用,我通过循环创建了一个存储msqli查询结果的每一行的数组:
while ($row=MysqLi_fetch_assoc($query)) $table[]=$row;
以这种方式操作,使用通常的索引指向表的每个记录要容易得多:
for ($i=0; $i<$max; $i++) { $id0[$i]=$table[$i]["id"]; $id1[$i]=$table[$i+1]["id"]; $id2[$i]=$table[$i+2]["id"]; }
mysqli_data_seek()
将结果指针设置为结果集中的任意行.
所以你的代码看起来像:
for ($i=0; $i<$max; $i++) { MysqLi_data_seek($result,$i); // dePEnding on your PHP version you might need a temporary VARiable to // get the ID $id0[$i] = MysqLi_fetch_assoc($result)['id']; ... }
以上是脚本宝典为你收集整理的php – 提取mysqli查询结果的第n个元素全部内容,希望文章能够帮你解决php – 提取mysqli查询结果的第n个元素所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。