Php 使用用户函数从mysql返回结果
请告诉我,为什么这个代码是错误的Php 使用用户函数从mysql返回结果,php,arrays,loops,Php,Arrays,Loops,请告诉我,为什么这个代码是错误的 function myres () { $db = new mysqli("localhost","userrr","pass","mvc"); $res = $db->query("SELECT * FROM news "); return $res; } while ($row = myres()->fetch_row()) { echo $row[0]; } 附言。 此代码正在运行: $db = new mys
function myres () {
$db = new mysqli("localhost","userrr","pass","mvc");
$res = $db->query("SELECT * FROM news ");
return $res;
}
while ($row = myres()->fetch_row()) {
echo $row[0];
}
附言。
此代码正在运行:
$db = new mysqli("localhost","userrr","pass","mvc");
$res = $db->query("SELECT * FROM news ");
while ($row = $res->fetch_row()) {
echo $row[0];
}
在这里你每次调用myres()
,我想:
while ($row = myres()->fetch_row()) {
echo $row[0];
}
$res = myres();
while ($row = $res->fetch_row()) {
echo $row[0];
}
所以每次$row
包含结果的第一行时,它都不会停止。我认为它会很好地工作:
while ($row = myres()->fetch_row()) {
echo $row[0];
}
$res = myres();
while ($row = $res->fetch_row()) {
echo $row[0];
}
每次检查
while
条件时,都会执行myres()
。如果在while
循环之前将其提取到一个变量中,它会工作得更好。为什么不将查询从函数中取出,或者让它返回一个数组并对每个执行一个呢?非常感谢,我的错误是不可理解的,谢谢。这不是答案,更适合作为评论。这让人们相信,它每次都被称为新概念: