[英]php return mysql_query
如何从函数中检索mysql_query? 例如:
class A() {
...
function getAll($l=1) {
...
$result = mysql_query($query);
return $result
}
...
}
$a = new A();
$r = $a -> getAll(2);
while ($row = mysql_fetch_assoc($r)) {
// do something
}
当我从函数返回$ result时,上面的代码不起作用。 但是,当我在getAll函数中使用mysql_fetch_assoc函数时,它可以完美运行。 所以基本上,我的问题是如何从函数返回mysql结果集?
**编辑**
我实际上没有任何错误。 上面喜欢的while语句将不会执行。 但是,当我从getAll函数中执行查询时,查询效果很好。
不要从查询中返回结果资源,而是返回从该资源中提取的数据:
$data = array();
while ( $row = mysql_fetch_assoc($result) ) {
$data[] = $row;
}
return $data;
绝对可以。
执行var_dump($r)
以确保获得资源。 如果不是,请仔细检查您的SQL。 可能有错误。
还要在脚本顶部打开其他错误报告(以及检查mysql_error
),以获得有关错误原因的更好线索:
ini_set('display_errors', true);
error_reporting(E_ALL);
您已经编辑了许多代码,因此很难进行进一步调查。 只要确保您的方法没有关闭mysql连接即可。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.