【发布时间】:2013-06-19 10:44:59
【问题描述】:
所以我有代码:
$sql = "SELECT * from users WHERE level = 2";
$result = mysql_query($sql);
while($write = mysql_fetch_array($result)){
echo ''.$write['username'].'';
}
我想让它更简单,所以我这样做了:
while($write = mysql_fetch_array(mysql_query("SELECT * from users WHERE level = 2"))){
echo ''.$write['username'].'';
}
为什么第一个代码不是无限循环而第二个代码是?
【问题讨论】:
-
因为
mysql_query()在每个循环中都会重新运行。 -
问:为什么天空是蓝色的?答:阅读文档
-
Please, don't use
mysql_*functions in new code。它们不再维护and are officially deprecated。看到red box?改为了解prepared statements,并使用PDO 或MySQLi - this article 将帮助您决定哪个。如果选择 PDO,here is a good tutorial -
我可以看到混乱。大多数函数都可以通过这种方式嵌套。
-
因为每次执行查询都会使循环无限
标签: php mysql sql while-loop