تطبيق خطوة إختيارية بإستخدام Collection when
ال when بتضيف خطوة لسلسلة العمليات لما الشرط يتحقق من غير فصل السلسلة
تفعيل فلتر حسب اختيار
لما الشرط يكون true بنختار الأرقام الأكبر من عشرة
<?php
$filtered = collect([5, 15, 25])->when(true, fn ($items) => $items->filter(fn ($number) => $number > 10));
echo $filtered->values()->toJson();النتيجة
[15,25]تخطي الخطوة عند عدم تحقق الشرط
لو الشرط false المجموعة بتكمل من غير تنفيذ الدالة
<?php
$items = collect([5, 15])->when(false, fn ($items) => $items->take(1));
echo $items->toJson();النتيجة
[5,15]ملحوظة
لو الشرط قيمة ممكن تكون صفر وعاوز تعتبرها موجودة إستخدم مقارنة صريحة بدل الإعتماد على قيمتها المنطقية