عدم جلب البيانات ومن ثم عمل فتره عليها؟

عدم جلب البيانات ومن ثم عمل فتره عليها؟

2024-05-06 وقت القراءه : أقل من دقيقة

Bad Practice Example

class MaterialController
{
    public function index($materialTypeFilter = 0)
    {
        $materials = Material::all()->where('type', materialTypeFilter);
    }
}

What To Do Instead

class MaterialController
{
    public function index($materialTypeFilter = 0)
    {
        $materials = Material::where('type', $materialTypeFilter)->get();
    }
}

جلب جميع البيانات من قاعدة البيانات ومن ثم عمل فلتره عليهاـ يؤذي إلى إستهلاك عالية للذاكرة، تخيل إن لدينا ألاف السجلات، فإنه يتم وضعها في الذاكرة، ومن ثم عمل فتره عليها، لكن يجب إستخدام database engine وإرجاع فقط البيانات التي نريدها ( البيانات المفلتره فقط).

إضافة تعليق
Loading...