Laravel 原始碼筆記 框架契約類之 ApplicationContract

php_yt發表於2020-03-03

ApplicationContractIlluminate\Contracts\Foundation\Application檢視命名

ApplicationContract 是應用例項 Application 例項的介面類。

Application :應用程式,我們乾脆叫它「服務容器」,它的「容器」的特徵太明顯了,實際它就是「容器」的管理工具。因為ApplicationContract 繼承了容器介面類 ContainerContract

應用程式介面

應用程式介面 ApplicationContract Illuminate\Contracts\Foundation\Application
繼承
框架容器介面 ContainerContract Illuminate\Contracts\Container\Container 檢視命名

<?php
namespace Illuminate\Contracts\Foundation;
use Illuminate\Contracts\Container\Container;

interface Application extends Container
{
    //獲取應用程式的版本號
    public function version();
    //獲取Laravel安裝的基本路徑
    public function basePath();
    //獲取或檢查當前應用程式環境
    public function environment();
    //確定我們是否在控制檯中執行。
    public function runningInConsole();
    //確定應用程式當前是否處於停機維護狀態。maintenance 維護
    public function isDownForMaintenance();
    //註冊所有已配置的服務提供者
    public function registerConfiguredProviders();
    //嚮應用程式註冊服務提供者
    public function register($provider, $options = [], $force = false);
    //註冊一個延遲的服務提供者和服務 deferred 推遲
    public function registerDeferredProvider($provider, $service = null);
    //啟動應用程式的服務提供者 Boot 啟動
    public function boot();
    //註冊一個新的啟動監聽器
    public function booting($callback);
    //註冊一個新的“已啟動的”監聽器
    public function booted($callback);
    //獲取快取的services.php檔案的路徑
    public function getCachedServicesPath();
    //獲取快取的 package .php檔案的路徑
    public function getCachedPackagesPath();
}
本作品採用《CC 協議》,轉載必須註明作者和本文連結

相關文章