PHP7とは直接関係ありません。この問題は、新しい mysqlndが原因です。 ドライバーなので、PHP5.xでも同じ問題が発生する可能性があります。 メモリがまだ割り当てられる前でも、memory_limitにはカウントされなかったため、これは実際にはバグ修正です 。
メモリの問題を回避するには、バッファなしクエリを使用する必要があります 大規模な結果セット用。
したがって、大きなデータセットを想定しているクエリの場合は、次のように適切な設定を行います。
$pdo->setAttribute(PDO::MYSQL_ATTR_USE_BUFFERED_QUERY, false);
詳細については、PDOチュートリアルに適切な説明があります 、重要なフィードバックが非常に貴重だったNikicに感謝します。