Koleksiyon yüklemlerini birleştir (ARCH7077)
Anahtar php.performance.combine-collection-predicates · Önem info · Kategori performance
Ardışık filter çağrıları veya boşluk kontrolü için count() > 0 koleksiyonu birden çok kez dolaşır. Yüklemleri tek geçişte birleştirin ve isNotEmpty() kullanın.
Hatalı
Bölüm başlığı “Hatalı”<?php$active = collect($users) ->filter(fn ($u) => $u->active) ->filter(fn ($u) => $u->age >= 18);
if ($active->count() > 0) { notify($active);}<?php$active = collect($users) ->filter(fn ($u) => $u->active && $u->age >= 18);
if ($active->isNotEmpty()) { notify($active);}Düzeltme
Bölüm başlığı “Düzeltme”Ardışık filtreleri tek bir yükleme birleştirin ve boşluk kontrolü için isNotEmpty() kullanın.