我可以使用mysql_fetch_array(mysql_query('...'))
吗?
或者这是唯一的方法:
$res = mysql_query($sql);
$data = array();
while(($row = mysql_fetch_array($res)) !== false) {
$data[] = $row;
}
请注意,我只期待一行/结果
答案 0 :(得分:2)
你可以,是的(如果你只想回一行),但你可能不应该。
在尝试从中获取结果之前,检查mysql_query()
的成功或失败非常重要。如果mysql_query()
失败,它会将FALSE
传递给mysql_fetch_array()
,这会导致错误,例如
mysql_fetch_array() expects parameter 1 to be resource, boolean given..
将mysql_query()
的输出分配给作为结果资源的变量并测试其成功或失败更安全。
在任何情况下,如果您希望返回多个结果,则无法执行mysql_fetch_array(mysql_query(...))
。