2012-12-21 59 views
0

我正在从下面的代码中使用PHP中的表获取数据。如何将所有行直接复制到数组中?我试过fetch_array()而不是fetch(),但它也不成功。获取数组php

$stmt = $this->db->prepare($sql); 
$stmt->execute(); 
$stmt->bind_result($aID, $sID); 

while ($stmt -> fetch()) { 
    echo $aID . " ". $sID . "<br>"; 
}   
+0

拿它用你的PDO? –

回答

0

如何我都行直接复制到阵列?

+0

那会是这样吗? '$ stmt = $ this-> db-> prepare($ sql); $ stmt-> execute(); $ stmt-> bind_result($ aID,$ sID); \t \t \t $ allrows = $ stmt-> mysqli_fetch_all(); \t \t \t echo $ allrows - > rowcount(); ' – zhtway

+0

假设你正在使用MySQLi OOP,该方法只是'fetch_all()'。参考我提供给PHP文档的链接。他们是你的朋友。 –

+0

我改变了这个,但仍然无法正常工作。任何想法? 'while($ row = $ stmt - > fetch_all()){echo $ row [0]; echo $ row [1];}' – zhtway

0
$array = $stmt->fetchAll(PDO::FETCH_ASSOC); 
+1

这个答案可以通过解释代码在做什么/如何解决问题来解决。由于长度和内容,它目前被认定为低质量帖子 – billinkc

1

如果使用PDO

Fetch_column是你在找什么

$stmt = $this->db->prepare($sql); 
     $stmt->execute(); 
     $stmt->bind_result($aID, $sID); 
    $Arrays = $stmt ->fetchAll(PDO::FETCH_COLUMN); 
+0

我尝试过这样但没有回应。 '$ stmt = $ this-> db-> prepare($ sql); $ stmt-> execute(); $ stmt-> bind_result($ aID,$ sID); \t \t \t而($行= $语句 - >使用fetchall(PDO :: FETCH_COLUMN)){ \t \t \t \t回波$行[0]; \t \t \t \t echo $ row [1]; \t \t \t \t}' – zhtway

+0

第一件事是第一件事;你使用mysqli还是PDO?并尝试我的结构和'print_r($ Arrays);'这会返回一个你正在寻找的数组吗? –

+0

Oh..sorry ..我使用mysqli。 – zhtway