簡體   English   中英

php返回mysql_query

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM