0

データベース内のすべてのユーザーを返す関数を作成しました。配列を出力していますが、1 つの結果しか出力していません。なぜこれを行うのですか?while ループで囲み、クエリに制限を加えました...

コード:

function getAllUsers() {

global $PDO;

    $stm = $PDO->prepare("SELECT * FROM `users` ORDER BY `bid` DESC LIMIT 15");

        $stm->execute();

            while($Array = $stm->fetch()) {
                return print_r($Array);
            }

}
4

3 に答える 3

3

fetchAll()を使用します。

$data = $stm->fetchAll()
foreach ($data as $item ) {
    print_r($item);
}
于 2013-10-02T03:10:29.600 に答える
1

while の代わりに foreach ループを使用し、fetch() の代わりに fetchAll() を使用します。

foreach ($stm->fetchAll() as $arr) {
   print_r($arr);
}
于 2013-10-02T03:13:44.117 に答える
0
function getAllUsers() {

   global $PDO;

   $stm = $PDO->prepare("SELECT * FROM `users` ORDER BY `bid` DESC LIMIT 15");
   $stm->execute();

   $var = array();

   while($Array = $stm->fetch()) {

     $var = $Array;

  }

 return $var;

 }
于 2013-10-02T03:12:09.580 に答える