เป็นไปได้ว่า หลังเปลี่ยน version PHP แล้ว
object ที่รับเข้ามายัง foreach() มันจะผิดพลาด
ลอง ดูว่าตอนเข้ามาครบรึเปล่า ถ้าไม่ครบ ก็เป็นตรงนี้แหละ ...
(จะครบได้ไง ก็ error อยู่
)
ตามท่านนี้ว่ามาเลยครับ
ส่วนใหญ่ปัญหานี้จะเกิดจากการเขียนโค๊ดแบบง่ายๆแบบดั้งเดิมที่ PHP ผ่อนปรมค่อนข้างมาก
เมื่อเข้มงวดการเขียนโค๊ดขึ้นมาในเวอร์ชั่นใหม่ (V7) คนที่เคยเขียนแบบเดิมจึงมักจะเกิดปัญหา
โดยการกลับไปแก้ไขของเก่า ไม่งั้นจะใช้ไม่ได้
กรณีของคุณลองเช็คค่าว่าใน loop นั้นต้องมีค่า(object...)อะไรมาเกี่ยวข้องบ้าง
เช่น เมื่อพบ ของเดิมเป็น
if($object){
ลองใส่ประมาณ if(isset($object)){
เป็นตัวอย่างนะครับ
นอกเหนือจากนี้ก็ลองเช็คดูว่า Version ใหม่ ที่คุณใช้ ได้ยกเลิกฟังชั่นเก่าตัวไหนไปบ้าง
เผลอๆ อาจมีอีกหลายจุดที่ต้องกลับไปแก้ไข
หวังว่าจะพอช่วยได้บ้าง