Theme
Primary Color

تمرير قيمة عبر خطوات بإستخدام Pipeline

ال Pipeline بتقسم معالجة القيمة لخطوات وكل خطوة بتقرر القيمة اللي تبعتها للتالية

تنظيف نص ثم توحيد حروفه

كل خطوة بتستقبل القيمة والدالة next وتعيد نتيجتها

<?php

use Illuminate\Pipeline\Pipeline;

$result = (new Pipeline())->send("  HELLO  ")->through([
    fn ($value, $next) => $next(trim($value)),
    fn ($value, $next) => $next(strtolower($value)),
])->thenReturn();
echo $result;

النتيجة

hello

ترتيب الخطوات بيغير النتيجة

المثال بيضيف خمسة ثم يضاعف الناتج

<?php

use Illuminate\Pipeline\Pipeline;

$result = (new Pipeline())->send(10)->through([
    fn ($value, $next) => $next($value + 5),
    fn ($value, $next) => $next($value * 2),
])->thenReturn();
echo $result;

النتيجة

30
laravel شرح