# PHP interface abstract trait Laravel 原始碼閱讀筆記
###### tags: `PHP` `Laravel`
## 在Laravel中
* interface 大約114個
* 
* abstract 大約32個
* 
* trait 大約102個
* 
## interface
* Illuminate\Auth\Passwords\TokenRepositoryInterface.php
* [官方API頁面](https://laravel.com/api/7.x/Illuminate/Auth/Passwords/TokenRepositoryInterface.html)
* Illuminate\Console\Scheduling\CacheAware.php
* Illuminate\Console\Scheduling\EventMutex.php
* Illuminate\Console\Scheduling\SchedulingMutex.php
* Illuminate\Contracts\Auth\Authenticatable.php
* Illuminate\Contracts\Auth\CanResetPassword.php
* Illuminate\Contracts\Auth\Factory.php
* Illuminate\Contracts\Auth\Guard.php
* Illuminate\Contracts\Auth\MustVerifyEmail.php
* Illuminate\Contracts\Auth\PasswordBroker.php
* Illuminate\Contracts\Auth\PasswordBrokerFactory.php
* Illuminate\Contracts\Auth\StatefulGuard.php
* Illuminate\Contracts\Auth\SupportsBasicAuth.php
* Illuminate\Contracts\Auth\UserProvider.php
* Illuminate\Contracts\Auth\Access\Authorizable.php
* Illuminate\Contracts\Auth\Access\Gate.php
* Illuminate\Contracts\Auth\Middleware\AuthenticatesRequests.php
* Illuminate\Contracts\Broadcasting\Broadcaster.php
* Illuminate\Contracts\Broadcasting\Factory.php
* Illuminate\Contracts\Broadcasting\ShouldBroadcast.php
* Illuminate\Contracts\Broadcasting\ShouldBroadcastNow.php
* Illuminate\Contracts\Bus\Dispatcher.php
* Illuminate\Contracts\Bus\QueueingDispatcher.php
* Illuminate\Contracts\Cache\Factory.php
* Illuminate\Contracts\Cache\Lock.php
* Illuminate\Contracts\Cache\LockProvider.php
* Illuminate\Contracts\Cache\Repository.php
* Illuminate\Contracts\Cache\Store.php
* Illuminate\Contracts\Config\Repository.php
* Illuminate\Contracts\Console\Application.php
* Illuminate\Contracts\Console\Kernel.php
* Illuminate\Contracts\Container\Container.php
* Illuminate\Contracts\Container\ContextualBindingBuilder.php
* Illuminate\Contracts\Cookie\Factory.php
* Illuminate\Contracts\Cookie\QueueingFactory.php
* Illuminate\Contracts\Database\Eloquent\Castable.php
* Illuminate\Contracts\Database\Eloquent\CastsAttributes.php
* Illuminate\Contracts\Database\Eloquent\CastsInboundAttributes.php
* Illuminate\Contracts\Database\Events\MigrationEvent.php
* Illuminate\Contracts\Debug\ExceptionHandler.php
* Illuminate\Contracts\Encryption\Encrypter.php
* Illuminate\Contracts\Events\Dispatcher.php
* Illuminate\Contracts\Filesystem\Cloud.php
* Illuminate\Contracts\Filesystem\Factory.php
* Illuminate\Contracts\Filesystem\Filesystem.php
* Illuminate\Contracts\Foundation\Application.php
* Illuminate\Contracts\Foundation\CachesConfiguration.php
* Illuminate\Contracts\Foundation\CachesRoutes.php
* Illuminate\Contracts\Hashing\Hasher.php
* Illuminate\Contracts\Http\Kernel.php
* Illuminate\Contracts\Mail\Factory.php
* Illuminate\Contracts\Mail\Mailable.php
* Illuminate\Contracts\Mail\Mailer.php
* Illuminate\Contracts\Mail\MailQueue.php
* Illuminate\Contracts\Notifications\Dispatcher.php
* Illuminate\Contracts\Notifications\Factory.php
* Illuminate\Contracts\Pagination\LengthAwarePaginator.php
* Illuminate\Contracts\Pagination\Paginator.php
* Illuminate\Contracts\Pipeline\Hub.php
* Illuminate\Contracts\Pipeline\Pipeline.php
* Illuminate\Contracts\Queue\EntityResolver.php
* Illuminate\Contracts\Queue\Factory.php
* Illuminate\Contracts\Queue\Job.php
* Illuminate\Contracts\Queue\Monitor.php
* Illuminate\Contracts\Queue\Queue.php
* Illuminate\Contracts\Queue\QueueableCollection.php
* Illuminate\Contracts\Queue\QueueableEntity.php
* Illuminate\Contracts\Queue\ShouldQueue.php
* Illuminate\Contracts\Redis\Connection.php
* Illuminate\Contracts\Redis\Connector.php
* Illuminate\Contracts\Redis\Factory.php
* Illuminate\Contracts\Routing\BindingRegistrar.php
* Illuminate\Contracts\Routing\Registrar.php
* Illuminate\Contracts\Routing\ResponseFactory.php
* Illuminate\Contracts\Routing\UrlGenerator.php
* Illuminate\Contracts\Routing\UrlRoutable.php
* Illuminate\Contracts\Session\Session.php
* Illuminate\Contracts\Support\Arrayable.php
* Illuminate\Contracts\Support\DeferrableProvider.php
* Illuminate\Contracts\Support\DeferringDisplayableValue.php
* Illuminate\Contracts\Support\Htmlable.php
* Illuminate\Contracts\Support\Jsonable.php
* Illuminate\Contracts\Support\MessageBag.php
* Illuminate\Contracts\Support\MessageProvider.php
* Illuminate\Contracts\Support\Renderable.php
* Illuminate\Contracts\Support\Responsable.php
* Illuminate\Contracts\Translation\HasLocalePreference.php
* Illuminate\Contracts\Translation\Loader.php
* Illuminate\Contracts\Translation\Translator.php
* Illuminate\Contracts\Validation\Factory.php
* Illuminate\Contracts\Validation\ImplicitRule.php
* Illuminate\Contracts\Validation\Rule.php
* Illuminate\Contracts\Validation\ValidatesWhenResolved.php
* Illuminate\Contracts\Validation\Validator.php
* Illuminate\Contracts\View\Engine.php
* Illuminate\Contracts\View\Factory.php
* Illuminate\Contracts\View\View.php
* Illuminate\Database\ConnectionInterface.php
* Illuminate\Database\ConnectionResolverInterface.php
* Illuminate\Database\Connectors\ConnectorInterface.php
* Illuminate\Database\Eloquent\Scope.php
* Illuminate\Database\Migrations\MigrationRepositoryInterface.php
* Illuminate\Http\Resources\PotentiallyMissing.php
* Illuminate\Queue\Connectors\ConnectorInterface.php
* Illuminate\Queue\Failed\FailedJobProviderInterface.php
* Illuminate\Routing\RouteCollectionInterface.php
* Illuminate\Routing\Contracts\ControllerDispatcher.php
* Illuminate\Routing\Matching\ValidatorInterface.php
* Illuminate\Session\ExistenceAwareInterface.php
* Illuminate\Support\Enumerable.php
* Illuminate\Validation\DatabasePresenceVerifierInterface.php
* Illuminate\Validation\PresenceVerifierInterface.php
* Illuminate\View\ViewFinderInterface.php
* Illuminate\View\Compilers\CompilerInterface.php
## abstract
* Illuminate\Broadcasting\Broadcasters\Broadcaster.php
* Illuminate\Cache\Lock.php
* Illuminate\Cache\TaggableStore.php
* Illuminate\Cache\Events\CacheEvent.php
* Illuminate\Console\GeneratorCommand.php
* Illuminate\Database\Grammar.php
* Illuminate\Database\Seeder.php
* Illuminate\Database\Eloquent\Model.php
* Illuminate\Database\Eloquent\Relations\HasOneOrMany.php
* Illuminate\Database\Eloquent\Relations\MorphOneOrMany.php
* Illuminate\Database\Eloquent\Relations\Relation.php
* Illuminate\Database\Events\ConnectionEvent.php
* Illuminate\Database\Events\MigrationEvent.php
* Illuminate\Database\Migrations\Migration.php
* Illuminate\Database\Schema\Grammars\Grammar.php
* Illuminate\Foundation\Testing\TestCase.php
* Illuminate\Hashing\AbstractHasher.php
* Illuminate\Http\Middleware\TrustHosts.php
* Illuminate\Mail\Transport\Transport.php
* Illuminate\Pagination\AbstractPaginator.php
* Illuminate\Queue\Queue.php
* Illuminate\Queue\Jobs\Job.php
* Illuminate\Redis\Connections\Connection.php
* Illuminate\Routing\AbstractRouteCollection.php
* Illuminate\Routing\Controller.php
* Illuminate\Support\Manager.php
* Illuminate\Support\ServiceProvider.php
* Illuminate\Support\Facades\Facade.php
* Illuminate\Testing\Assert.php
* Illuminate\View\Component.php
* Illuminate\View\Compilers\Compiler.php
* Illuminate\View\Engines\Engine.php
## trait
* Illuminate\Auth\Authenticatable.php
* Illuminate\Auth\CreatesUserProviders.php
* Illuminate\Auth\GuardHelpers.php
* Illuminate\Auth\MustVerifyEmail.php
* Illuminate\Auth\Access\HandlesAuthorization.php
* Illuminate\Auth\Passwords\CanResetPassword.php
* Illuminate\Broadcasting\InteractsWithSockets.php
* Illuminate\Broadcasting\Broadcasters\UsePusherChannelConventions.php
* Illuminate\Bus\Queueable.php
* Illuminate\Cache\RetrievesMultipleKeys.php
* Illuminate\Console\ConfirmableTrait.php
* Illuminate\Console\Concerns\CallsCommands.php
* Illuminate\Console\Concerns\HasParameters.php
* Illuminate\Console\Concerns\InteractsWithIO.php
* Illuminate\Console\Scheduling\ManagesFrequencies.php
* Illuminate\Database\DetectsConcurrencyErrors.php
* Illuminate\Database\DetectsLostConnections.php
* Illuminate\Database\Concerns\BuildsQueries.php
* Illuminate\Database\Concerns\ManagesTransactions.php
* Illuminate\Database\Eloquent\SoftDeletes.php
* Illuminate\Database\Eloquent\Concerns\GuardsAttributes.php
* Illuminate\Database\Eloquent\Concerns\HasAttributes.php
* Illuminate\Database\Eloquent\Concerns\HasEvents.php
* Illuminate\Database\Eloquent\Concerns\HasGlobalScopes.php
* Illuminate\Database\Eloquent\Concerns\HasRelationships.php
* Illuminate\Database\Eloquent\Concerns\HasTimestamps.php
* Illuminate\Database\Eloquent\Concerns\HidesAttributes.php
* Illuminate\Database\Eloquent\Concerns\QueriesRelationships.php
* Illuminate\Database\Eloquent\Relations\Concerns\AsPivot.php
* Illuminate\Database\Eloquent\Relations\Concerns\InteractsWithPivotTable.php
* Illuminate\Database\Eloquent\Relations\Concerns\SupportsDefaultModels.php
* Illuminate\Foundation\Auth\Access\Authorizable.php
* Illuminate\Foundation\Auth\Access\AuthorizesRequests.php
* Illuminate\Foundation\Bus\Dispatchable.php
* Illuminate\Foundation\Bus\DispatchesJobs.php
* Illuminate\Foundation\Events\Dispatchable.php
* Illuminate\Foundation\Testing\DatabaseMigrations.php
* Illuminate\Foundation\Testing\DatabaseTransactions.php
* Illuminate\Foundation\Testing\RefreshDatabase.php
* Illuminate\Foundation\Testing\WithFaker.php
* Illuminate\Foundation\Testing\WithoutEvents.php
* Illuminate\Foundation\Testing\WithoutMiddleware.php
* Illuminate\Foundation\Testing\Concerns\InteractsWithAuthentication.php
* Illuminate\Foundation\Testing\Concerns\InteractsWithConsole.php
* Illuminate\Foundation\Testing\Concerns\InteractsWithContainer.php
* Illuminate\Foundation\Testing\Concerns\InteractsWithDatabase.php
* Illuminate\Foundation\Testing\Concerns\InteractsWithExceptionHandling.php
* Illuminate\Foundation\Testing\Concerns\InteractsWithRedis.php
* Illuminate\Foundation\Testing\Concerns\InteractsWithSession.php
* Illuminate\Foundation\Testing\Concerns\MakesHttpRequests.php
* Illuminate\Foundation\Testing\Concerns\MocksApplicationServices.php
* Illuminate\Foundation\Validation\ValidatesRequests.php
* Illuminate\Http\FileHelpers.php
* Illuminate\Http\ResponseTrait.php
* Illuminate\Http\Concerns\InteractsWithContentTypes.php
* Illuminate\Http\Concerns\InteractsWithFlashData.php
* Illuminate\Http\Concerns\InteractsWithInput.php
* Illuminate\Http\Resources\CollectsResources.php
* Illuminate\Http\Resources\ConditionallyLoadsAttributes.php
* Illuminate\Http\Resources\DelegatesToResource.php
* Illuminate\Log\ParsesLogConfiguration.php
* Illuminate\Notifications\HasDatabaseNotifications.php
* Illuminate\Notifications\Notifiable.php
* Illuminate\Notifications\RoutesNotifications.php
* Illuminate\Queue\InteractsWithQueue.php
* Illuminate\Queue\SerializesAndRestoresModelIdentifiers.php
* Illuminate\Queue\SerializesModels.php
* Illuminate\Routing\RouteDependencyResolverTrait.php
* Illuminate\Support\InteractsWithTime.php
* Illuminate\Support\Traits\CapsuleManagerTrait.php
* Illuminate\Support\Traits\EnumeratesValues.php
* Illuminate\Support\Traits\ForwardsCalls.php
* Illuminate\Support\Traits\Localizable.php
* Illuminate\Support\Traits\Macroable.php
* Illuminate\Support\Traits\ReflectsClosures.php
* Illuminate\Support\Traits\Tappable.php
* Illuminate\Validation\ValidatesWhenResolvedTrait.php
* Illuminate\Validation\Concerns\FormatsMessages.php
* Illuminate\Validation\Concerns\ReplacesAttributes.php
* Illuminate\Validation\Concerns\ValidatesAttributes.php
* Illuminate\Validation\Rules\DatabaseRule.php
* Illuminate\View\Compilers\Concerns\CompilesAuthorizations.php
* Illuminate\View\Compilers\Concerns\CompilesComments.php
* Illuminate\View\Compilers\Concerns\CompilesComponents.php
* Illuminate\View\Compilers\Concerns\CompilesConditionals.php
* Illuminate\View\Compilers\Concerns\CompilesEchos.php
* Illuminate\View\Compilers\Concerns\CompilesErrors.php
* Illuminate\View\Compilers\Concerns\CompilesHelpers.php
* Illuminate\View\Compilers\Concerns\CompilesIncludes.php
* Illuminate\View\Compilers\Concerns\CompilesInjections.php
* Illuminate\View\Compilers\Concerns\CompilesJson.php
* Illuminate\View\Compilers\Concerns\CompilesLayouts.php
* Illuminate\View\Compilers\Concerns\CompilesLoops.php
* Illuminate\View\Compilers\Concerns\CompilesRawPhp.php
* Illuminate\View\Compilers\Concerns\CompilesStacks.php
* Illuminate\View\Compilers\Concerns\CompilesTranslations.php
* Illuminate\View\Concerns\ManagesComponents.php
* Illuminate\View\Concerns\ManagesEvents.php
* Illuminate\View\Concerns\ManagesLayouts.php
* Illuminate\View\Concerns\ManagesLoops.php
* Illuminate\View\Concerns\ManagesStacks.php
* Illuminate\View\Concerns\ManagesTranslations.php
