全投稿数(2万前後)を取得しようとして
下記を実行した場合メモリーオーバーになってしまいます。
$conn->prepare($sql);
$stmt->execute();
$stmt->rowCount();
メモリーオーバーにならない方法はありませんでしょうか?
SQL が明示されていませんが COUNT 関数を使えば良いと思います。
$sql = "SELECT COUNT(*) FROM xxx"; $res = $conn->query($sql); $count = $res->fetchColumn();
参考:
http://php.net/manual/ja/pdostatement.rowcount.php#example-1009
大量のデータを一度に取得しようとするので、エラーになってしまいます。
そこで、SQLに、LIMIT と OFFSET 入れて、少しずつデータを取得して、処理が完了したら、続きを読むようにしましょう。
コメント(0件)