【发布时间】:2014-06-04 18:50:16
【问题描述】:
有趣的是,我无法为这个问题找到一个好的解释。 当我不使用“while-loop”来获取 mysql 结果时有什么缺点吗?
我到处都能看到这行代码:
while ($row = mysql_fetch_array($result)) {
// do something with $row
}
我不确定我是否见过使用 foreach 循环获取 mysql 结果的代码。
那么其他循环有什么问题吗,或者while循环是唯一一个简单易用的循环吗?
我想对于具有 100-1000 个结果集的 while 循环或 foreach 循环的常规使用没有性能问题,不是吗?
【问题讨论】:
-
因为for循环你需要知道mysql_num_rows返回的行数然后用这个数字循环。而当所有行都被取出时循环才结束。如果你不想循环你可以使用 mysql_fetch_all
-
foreach 作用于数组(或可迭代对象); $result 不是那些东西,它是一种资源
-
啊,好吧,因为它是一种资源。而且我不能使用 foreach 或 for-loop 从资源对象中获取信息?还是资源不是对象只是资源?
标签: php mysql foreach while-loop resultset