Ini tidak terkait langsung dengan PHP7. Masalah ini disebabkan oleh mysqlnd baru driver, sehingga Anda dapat mengalami masalah yang sama bahkan dengan PHP 5.x juga. Sebenarnya ini adalah perbaikan bug, karena bahkan sebelum memori masih dialokasikan, tetapi tidak diperhitungkan dalam memory_limit .
Untuk menghindari masalah memori, Anda harus menggunakan kueri tanpa buffer untuk hasil yang besar.
Jadi, untuk kueri yang mengharapkan kumpulan data besar, atur pengaturan yang tepat seperti ini:
$pdo->setAttribute(PDO::MYSQL_ATTR_USE_BUFFERED_QUERY, false);
Untuk bacaan lebih lanjut, saya punya penjelasan yang layak dalam tutorial PDO saya , terima kasih kepada Nikic, yang umpan balik kritisnya sangat berharga.