完全可以的,你不想用while循环也完全可以做到。
我给你大致说一下思路:
假定数组为:MM_Array(X,Y)
那么,X指定字段,Y指定记录。
用两个For循环嵌套,就可以把Y条记录(每条记录取前X字段)的值存到数组中了。
……PS:为什么While循环不是很好?用好了哪个都一样。
用while循环例如:
$res = mysql_query("select id,name,description,price,pic_url1 from ebf_products");
while($pp = mysql_fetch_array($res,MYSQL_ASSOC) or false){
$list[] = $pp;
}
rsRankGetRows是取数组没错,但不是普通的一维数组,是二维数组
取值方式:MyArray(列,行)
示例:
for i=1 to UBound(MyArray)
responsewrite MyArray(0,i)' 第一个字段,第i条数据,以此类推
next
jobInfo 仅仅只做了个new;
后期也没有赋值。。有可能你的jobInfoJobID此时是个null;
执行ConvertToString(null)肯定会出错的。
建议:
1初始化jobInfo属性或者为其赋值
2ConvertToString(jobInfoJobID);可以修改为ConvertToString(jobInfoJobID==null""jobInfoJobID);
foreach循环用于列举出集合中所有的元素,foreach语句中的表达式由关键字in隔开的两个项组成。in右边的项是集合名,in左边的项是变量名,用来存放该集合中的每个元素。 该循环的运行过程如下:每一次循环时,从集合中取出一个新的元素值。放到只读变量中去,如果括号中的整个表达式返回值为true,foreach块中的语句就能够执行。一旦集合中的元素都已经被访问到,整个表达式的值为false,控制流程就转入到foreach块后面 的执行语句。
如果是纯遍历的话,他们俩没什么两样,速度都差不多。
我觉得你应该仔细考虑一下你的需求,为什么用遍历这种方式呢,耗费的时间不可预料,随着数据的增大,会变得很糟糕。建议你寻找其他方式,比如增加sql查询条件,限制返回的数据数量。
在循环里面去 *** 作数据库肯定会慢的,而且还容易碰到新手,在循环里面创建数据库连接,会导致连接数满。一般查询的话,在外层一次性查询出来 然后 在逻辑层去循环组织数据。如果是新增,则可以考虑使用批量插入的方法去处理。
以上就是关于如何嵌套循环,内层循环去查询数据库全部的内容,包括:如何嵌套循环,内层循环去查询数据库、PHP怎么用foreach循环数据库里的数据、asp 获取数据库符合条件的数据并用数组装载,且做for循环使用等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)