如何在单个数组中获取所有数据不使用 while 语句。这是一些代码,但它不能很好地工作。 任何关于整个查询的想法都会在 Sigle Assoc 数组中产生。知道吗??
$data=array();
$sql = "SELECT `Name`, `Title`, `Version`, `Date`, `Cover`, `Content` FROM dict";
$result=mysql_query($sql);
while($data[]=mysql_fetch_assoc($result))
{
$data[]=mysql_fetch_assoc($result);
}
print_r($data);
你可以把它包装成它自己的函数(并纠正错误(,这样你就不会再错误地输入它了:
mysql_fetch_assoc_all($result)
{
$data = array();
while ($row = mysql_fetch_assoc($result))
{
$data[] = $row;
}
return $data;
}
用法:
$sql = "SELECT `Name`, `Title`, `Version`, `Date`, `Cover`, `Content` FROM dict";
$result = mysql_query($sql);
$data = mysql_fetch_assoc_all($result);
请注意,$result
必须是有效的结果。
它不起作用的原因是你如何做循环。
while($row = mysql_fetch_assoc($result))
{
$data[] = $row;
}
然后你在 $data
中有一个关联数组数组。
我不知道任何"单行"解决方案。尽管您当然可以按照 hakre 的建议将所有这些包装在一个函数中。
有点晚了,但"单行"可能是:
while($data[] = mysql_fetch_assoc($result));