PHP mysqli结果数组

PHP mysqli结果数组,php,mysqli,Php,Mysqli,只是学习PHP,所以请善待他人。 我有一个mysqli查询,需要从中提取特定结果。 例如我需要拉1、4、7、10等行,然后往回拉2、5、8、11等行,然后往回拉,最后拉3、6、9、12等行。我还需要分别引用每个字段。 最好的方法是什么? 这一切背后的原因是我必须显示结果的方式。 我知道我可以通过移动指针在ASP中实现这一点,但我对PHP一无所知。 仅供参考PHP版本5.3.6。 谢谢 您可以对查询结果使用以下方法: $result = mysqli_query($db_handle,

只是学习PHP,所以请善待他人。

我有一个mysqli查询,需要从中提取特定结果。
例如我需要拉1、4、7、10等行,然后往回拉2、5、8、11等行,然后往回拉,最后拉3、6、9、12等行。我还需要分别引用每个字段。

最好的方法是什么?

这一切背后的原因是我必须显示结果的方式。
我知道我可以通过移动指针在ASP中实现这一点,但我对PHP一无所知。

仅供参考PHP版本5.3.6。

谢谢

您可以对查询结果使用以下方法:

$result = mysqli_query($db_handle, "SELECT...");
$rows = mysqli_fetch_all($result);
或者,如果您没有,您可以这样做:

for ($rows = array(); $tmp = mysqli_fetch_array($result);) 
    $rows[] = $tmp;
for ($i = 1; $i <= 10; $i += 3) {
    $rows[$i]["fieldname"]; // do your stuff
}
$rows
将包含所有行,因此您可以通过所需的任何索引访问每一行

因此,如果您想要第1、4、7、10行,可以这样做:

for ($rows = array(); $tmp = mysqli_fetch_array($result);) 
    $rows[] = $tmp;
for ($i = 1; $i <= 10; $i += 3) {
    $rows[$i]["fieldname"]; // do your stuff
}

for($i=1;$i)您在PHP中尝试了什么?有代码吗?您的尝试在哪里?1查询然后在PHP中对数据进行排序会更有效,但它只是按顺序返回查询。因此我知道查询是有效的,这正是我需要修复的顺序。$result=mysqli\u查询($con,$sql\u str);而($row=mysqli\u fetch\u数组($result)){echo$row['I_ID']}这正是我所需要的!但出于某种原因,它不喜欢“mysqli_fetch_all”。当它出现时,脚本停止。如果我将其注释掉,则for循环工作(使用简单的“echo$I”进行测试),但将mysqli_fetch_全部放回,它甚至无法到达for循环。
echo

“.$result->num_rows.

“;//返回10$rows=mysqli_fetch_all($result);//如果留在($f=0;$f)的stops脚本中,可能您没有mysqlnd。我添加了另一种获取所有行的方法。现在可以使用了吗?是的,是另一种方法!很高兴知道我没有mysqlnd。谢谢您的帮助。