Laravel macro ile var olan Laravel componentlarına metod ekleyebilirsiniz. App\Providers\AppServiceProvider dosyasındaki boot() metoduna tanımlamayı yapabilirsiniz.
public function boot() { Str::macro('isLength', function ($str, $length) { return static::length($str) == $length; }); }
Kullanımı ise şu şekilde olacaktır.
use Illuminate\Support\Str; dd(Str::isLength('This is a Laravel Macro', 23)); // true
Macroable trait’ine sahip tüm componentlarda Macro kullanabilirsiniz. Liste şu şekilde;
Illuminate\Auth\RequestGuard Illuminate\Auth\SessionGuard Illuminate\Cache\Repository Illuminate\Console\Command Illuminate\Console\Scheduling\Event Illuminate\Cookie\CookieJar Illuminate\Database\Eloquent\FactoryBuilder Illuminate\Database\Eloquent\Relations\Relation Illuminate\Database\Grammar Illuminate\Database\Query\Builder Illuminate\Database\Schema\Blueprint Illuminate\Filesystem\Filesystem Illuminate\Foundation\Testing\TestResponse Illuminate\Http\JsonResponse Illuminate\Http\RedirectResponse Illuminate\Http\Request Illuminate\Http\Response Illuminate\Http\UploadedFile Illuminate\Mail\Mailer Illuminate\Routing\PendingResourceRegistration Illuminate\Routing\Redirector Illuminate\Routing\ResponseFactory Illuminate\Routing\Route Illuminate\Routing\Router Illuminate\Routing\UrlGenerator Illuminate\Support\Arr Illuminate\Support\Collection Illuminate\Support\LazyCollection Illuminate\Support\Str Illuminate\Support\Testing\Fakes\NotificationFake Illuminate\Translation\Translator Illuminate\Validation\Rule Illuminate\View\Factory Illuminate\View\View
İlk Yorumu Siz Yapın