foreach($rs->fetch_row() as $key=>$v2){
print_r( $v2); //这里只能取出第一行数据
}
这样写实现的功能是:循环输出第一行的所有列的数据。
$rs->fetch_row()返回的是数组。
print_r( $v2); //这里只能取出第一行数据
}
这样写实现的功能是:循环输出第一行的所有列的数据。
$rs->fetch_row()返回的是数组。
print_r( $v2); //这里只能取出第一行数据
}foreach($rs->fetch_array() as $key=>$v2){
print_r( $v2); //这里只能取出第一行数据
}
我也考虑过是个二维数组,用
foreach($rs->fetch_row() as $v2){
foreach($v2 as $v3){
print_r( $v3);
}
}但是报错
foreach($rs->fetch_row() as $key=>$v2){
print_r( $v2); //这里只能取出第一行数据
}
你foreach()里面的东西本身就有问题了,$rs->fetch_row()只取出了一行吧
foreach($rs->fetch_row() as $v2)
当你打印$v2的时候,打印出来的是第一行中的每一列的数据,
是个字符串,不是数组。
这种情况下,你再foreach($v2 as $v3)的话肯定会报错啊!while($ary=$rs->fetch_row())
{
foreach($ary as $key=>$v2){
print_r($v2);
}
}
这样是可以的。
所以while读取$rs->fetch_row() 是有数据出来的,读出来继续下一次的时候 $rs->fetch_row()这个指针会向下移一位。直到读不出数据才会结束。foreach($rs->fetch_row() as $v2)里面的$rs->fetch_row() 仅仅当作一个数组来处理 把里面的一行数组读完就结局了。不会在循环的从$rs->fetch_row() 读取数据
print_r( $v2); //这里只能取出第一行数据
}
foreach是在数组内部循环,
注意你第一个foreach那个循环, fetch_row只运行了一次,而while那个循环,fetch_array是运行了5次
foreach($rs as $row)
printf_r($row);