1

複数回PHP PDO戻りオブジェクトを使用するには?

以下のコードによると、 $result オブジェクトは while ループにデータを表示しません。

私のコード

try {
    $dbhandle = new PDO("sqlite:".$database);
} catch (PDOException $e) {
    echo 'Connection failed: ' . $e->getMessage();
}

$result=$dbhandle->query("select * from table");

if($result)
{
    $row=$result->fetch(PDO::FETCH_ASSOC)

    if(count($row)>0)
    {
        while ($rs1 = $result->fetch(PDO::FETCH_ASSOC, PDO::FETCH_ORI_NEXT)) 
        {
            echo "<pre>";
            print_r($rs1);
            echo "</pre>";
        }
    }
    else
    {
        // error message
    }
}
4

2 に答える 2

2

あなたの質問に厳密に答えているわけではありません$stmt->fetchAllが、ループを処理して完全な連想配列を返す with PDO ステートメントを見てみませんか? 時間を大幅に節約できます。

于 2012-08-28T12:17:51.803 に答える
2

これは、カーソルが最後にあるためです。したがって、カーソルをリセットする必要があります。

http://us.php.net/manual/en/pdostatement.closecursor.php

通常、MySQL では MySQL Free の結果を使用できます。

pdo フリーの結果

于 2012-08-28T12:15:16.240 に答える