/
githubmirror
/
framework
Обзор
Документация
Войти
/
githubmirror
/
framework
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
13.x
src/Illuminate/Support/DefaultProviders.php
104 строки
3 KB
Lucas Michot
Use Collection only()/diff() instead of filter()/reject() with in_array() (#60945)
31 июл 2026, 00:43
Не верифицирован
31 июл 2026, 00:43
2c41056
Код
Авторство
О чём код?
<?php namespace Illuminate\Support; class DefaultProviders { /** * The current providers. * * @var array<class-string> */ protected $providers; /** * Create a new default provider collection. * * @param array<class-string>|null $providers */ public function __construct(?array $providers = null) { $this->providers = $providers ?: [ \Illuminate\Auth\AuthServiceProvider::class, \Illuminate\Broadcasting\BroadcastServiceProvider::class, \Illuminate\Bus\BusServiceProvider::class, \Illuminate\Cache\CacheServiceProvider::class, \Illuminate\Foundation\Providers\ConsoleSupportServiceProvider::class, \Illuminate\Concurrency\ConcurrencyServiceProvider::class, \Illuminate\Cookie\CookieServiceProvider::class, \Illuminate\Database\DatabaseServiceProvider::class, \Illuminate\Encryption\EncryptionServiceProvider::class, \Illuminate\Filesystem\FilesystemServiceProvider::class, \Illuminate\Image\ImageServiceProvider::class, \Illuminate\Foundation\Providers\FoundationServiceProvider::class, \Illuminate\Hashing\HashServiceProvider::class, \Illuminate\Mail\MailServiceProvider::class, \Illuminate\Notifications\NotificationServiceProvider::class, \Illuminate\Pagination\PaginationServiceProvider::class, \Illuminate\Auth\Passwords\PasswordResetServiceProvider::class, \Illuminate\Pipeline\PipelineServiceProvider::class, \Illuminate\Queue\QueueServiceProvider::class, \Illuminate\Redis\RedisServiceProvider::class, \Illuminate\Session\SessionServiceProvider::class, \Illuminate\Translation\TranslationServiceProvider::class, \Illuminate\Validation\ValidationServiceProvider::class, \Illuminate\View\ViewServiceProvider::class, ]; } /** * Merge the given providers into the provider collection. * * @param array<class-string> $providers * @return static */ public function merge(array $providers) { $this->providers = array_merge($this->providers, $providers); return new static($this->providers); } /** * Replace the given providers with other providers. * * @param array<class-string, class-string> $replacements * @return static */ public function replace(array $replacements) { $current = new Collection($this->providers); foreach ($replacements as $from => $to) { $key = $current->search($from); $current = is_int($key) ? $current->replace([$key => $to]) : $current; } return new static($current->values()->toArray()); } /** * Disable the given providers. * * @param array<class-string> $providers * @return static */ public function except(array $providers) { return new static((new Collection($this->providers)) ->diff($providers) ->values() ->toArray()); } /** * Convert the provider collection to an array. * * @return array<class-string> */ public function toArray() { return $this->providers; } }