亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

annuaire recherche
閱讀前篇 簡(jiǎn)介 Yii 是什么 從 Yii 1.1 升級(jí) 入門 安裝 Yii 運(yùn)行應(yīng)用 第一次問候 使用Forms 數(shù)據(jù)庫(kù)應(yīng)用 使用 Gii 生成代碼 進(jìn)階 應(yīng)用結(jié)構(gòu) 概述 入口腳本 應(yīng)用(Applications) 應(yīng)用組件(Application Components) 控制器(Controllers) 模型(Models) 視圖(views) 模塊(Modules) 過濾器(Filters) 小部件(Widgets) 前端資源(Assets) 擴(kuò)展(Extensions) 請(qǐng)求處理 運(yùn)行概述 啟動(dòng)引導(dǎo)(Bootstrapping) 路由和創(chuàng)建URL 請(qǐng)求(Requests) 響應(yīng)(Responses) Sessions 和 Cookies 錯(cuò)誤處理(Handling Errors) 日志(Logging) 關(guān)鍵概念 組件(Component) 屬性(Property) 事件(Events) 行為(Behaviors) 配置(Configurations) 別名(Aliases) 類自動(dòng)加載(Autoloading) 服務(wù)定位器(Service Locator) 依賴注入容器(Dependency Injection Container) 配合數(shù)據(jù)庫(kù)工作 數(shù)據(jù)庫(kù)訪問 (Data Access Objects) 查詢生成器(Query Builder) 活動(dòng)記錄(Active Record) 數(shù)據(jù)庫(kù)遷移(Migrations) Sphinx Redis MongoDB Elasticsearch 接收用戶數(shù)據(jù) 創(chuàng)建表單(Creating Forms) 輸入驗(yàn)證(Validating Input) 文件上傳(Uploading Files) 收集列表輸入(Collecting Tabular Input) 多模型的復(fù)合表單(Getting Data for Multiple Models) 顯示數(shù)據(jù) 格式化輸出數(shù)據(jù)(Data Formatting) 分頁(yè)(Pagination) 排序(Sorting) 數(shù)據(jù)提供器(Data Providers) 數(shù)據(jù)小部件(Data Widgets) 客戶端腳本使用(Working with Client Scripts) 主題(Theming) 安全 認(rèn)證(Authentication) 授權(quán)(Authorization) 處理密碼(Working with Passwords) 客戶端認(rèn)證(Auth Clients) 最佳安全實(shí)踐(Best Practices) 緩存 概述 數(shù)據(jù)緩存 片段緩存 頁(yè)面緩存 HTTP 緩存 RESTfull Web服務(wù) 快速入門(Quick Start) 資源(Resources) 控制器(Controllers) 路由(Routing) 格式化響應(yīng)(Response Formatting) 授權(quán)認(rèn)證(Authentication) 速率限制(Rate Limiting) 版本(Versioning) 錯(cuò)誤處理(Error Handling) 開發(fā)工具 調(diào)試工具欄和調(diào)試器 使用Gii生成代碼 生成API文檔 測(cè)試 概述(Overview) 配置測(cè)試環(huán)境(Testing environment setup) 單元測(cè)試(Unit Tests) 功能測(cè)試(Function Tests) 驗(yàn)收測(cè)試(Acceptance Tests) 測(cè)試夾具(Fixtures) 高級(jí)專題 高級(jí)應(yīng)用模板 創(chuàng)建自定義應(yīng)用程序結(jié)構(gòu) 控制臺(tái)命令 核心驗(yàn)證器(Core Validators) 國(guó)際化 收發(fā)郵件 性能優(yōu)化 共享主機(jī)環(huán)境 模板引擎 集成第三方代碼 小部件 Bootstrap 小部件 Jquery UI 助手類 概述 Array 助手(ArrayHelper) Html 助手(Html) Url 助手(Url)
personnages

應(yīng)用組件

應(yīng)用組件

應(yīng)用主體是服務(wù)定位器,它部署一組提供各種不同功能的?應(yīng)用組件?來處理請(qǐng)求。 例如,urlManager組件負(fù)責(zé)處理網(wǎng)頁(yè)請(qǐng)求路由到對(duì)應(yīng)的控制器。db組件提供數(shù)據(jù)庫(kù)相關(guān)服務(wù)等等。

在同一個(gè)應(yīng)用中,每個(gè)應(yīng)用組件都有一個(gè)獨(dú)一無二的 ID 用來區(qū)分其他應(yīng)用組件,你可以通過如下表達(dá)式訪問應(yīng)用組件。

\Yii::$app->componentID

例如,可以使用?\Yii::$app->db?來獲取到已注冊(cè)到應(yīng)用的 yii\db\Connection, 使用?\Yii::$app->cache?來獲取到已注冊(cè)到應(yīng)用的 yii\caching\Cache。

第一次使用以上表達(dá)式時(shí)候會(huì)創(chuàng)建應(yīng)用組件實(shí)例,后續(xù)再訪問會(huì)返回此實(shí)例,無需再次創(chuàng)建。

應(yīng)用組件可以是任意對(duì)象,可以在?應(yīng)用主體配置配置 yii\base\Application::components 屬性 . 例如:

[
    'components' => [
        // 使用類名注冊(cè) "cache" 組件
        'cache' => 'yii\caching\ApcCache',

        // 使用配置數(shù)組注冊(cè) "db" 組件
        'db' => [
            'class' => 'yii\db\Connection',
            'dsn' => 'mysql:host=localhost;dbname=demo',
            'username' => 'root',
            'password' => '',
        ],

        // 使用函數(shù)注冊(cè)"search" 組件
        'search' => function () {
            return new app\components\SolrService;
        },
    ],
]

補(bǔ)充:請(qǐng)謹(jǐn)慎注冊(cè)太多應(yīng)用組件,應(yīng)用組件就像全局變量,使用太多可能加大測(cè)試和維護(hù)的難度。 一般情況下可以在需要時(shí)再創(chuàng)建本地組件。

引導(dǎo)啟動(dòng)組件

上面提到一個(gè)應(yīng)用組件只會(huì)在第一次訪問時(shí)實(shí)例化,如果處理請(qǐng)求過程沒有訪問的話就不實(shí)例化。 有時(shí)你想在每個(gè)請(qǐng)求處理過程都實(shí)例化某個(gè)組件即便它不會(huì)被訪問, 可以將該組件ID加入到應(yīng)用主體的 yii\base\Application::bootstrap 屬性中。

例如, 如下的應(yīng)用主體配置保證了?log?組件一直被加載。

[
    'bootstrap' => [
        // 將 log 組件 ID 加入引導(dǎo)讓它始終載入
        'log',
    ],
    'components' => [
        'log' => [
            // "log" 組件的配置
        ],
    ],
]

核心應(yīng)用組件

Yii 定義了一組固定ID和默認(rèn)配置的?核心?組件,例如 yii\web\Application::request 組件 用來收集用戶請(qǐng)求并解析?路由; yii\base\Application::db 代表一個(gè)可以執(zhí)行數(shù)據(jù)庫(kù)操作的數(shù)據(jù)庫(kù)連接。 通過這些組件,Yii應(yīng)用主體能處理用戶請(qǐng)求。

下面是預(yù)定義的核心應(yīng)用組件列表,可以和普通應(yīng)用組件一樣配置和自定義它們。 當(dāng)你配置一個(gè)核心組件,不指定它的類名的話就會(huì)使用Yii默認(rèn)指定的類。

  • yii\web\AssetManager: 管理資源包和資源發(fā)布,詳情請(qǐng)參考?管理資源?一節(jié)。
  • yii\db\Connection: 代表一個(gè)可以執(zhí)行數(shù)據(jù)庫(kù)操作的數(shù)據(jù)庫(kù)連接, 注意配置該組件時(shí)必須指定組件類名和其他相關(guān)組件屬性,如yii\db\Connection::dsn。 詳情請(qǐng)參考?數(shù)據(jù)訪問對(duì)象?一節(jié)。
  • yii\base\Application::errorHandler: 處理 PHP 錯(cuò)誤和異常, 詳情請(qǐng)參考?錯(cuò)誤處理?一節(jié)。
  • yii\i18n\Formatter: 格式化輸出顯示給終端用戶的數(shù)據(jù),例如數(shù)字可能要帶分隔符, 日期使用長(zhǎng)格式。詳情請(qǐng)參考?格式化輸出數(shù)據(jù)一節(jié)。
  • yii\i18n\I18N: 支持信息翻譯和格式化。詳情請(qǐng)參考?國(guó)際化?一節(jié)。
  • yii\log\Dispatcher: 管理日志對(duì)象。詳情請(qǐng)參考?日志?一節(jié)。
  • yii\swiftmailer\Mailer: 支持生成郵件結(jié)構(gòu)并發(fā)送,詳情請(qǐng)參考?郵件?一節(jié)。
  • yii\base\Application::response: 代表發(fā)送給用戶的響應(yīng), 詳情請(qǐng)參考?響應(yīng)?一節(jié)。
  • yii\base\Application::request: 代表從終端用戶處接收到的請(qǐng)求, 詳情請(qǐng)參考?請(qǐng)求?一節(jié)。
  • yii\web\Session: 代表會(huì)話信息,僅在yii\web\Application 網(wǎng)頁(yè)應(yīng)用中可用, 詳情請(qǐng)參考?Sessions (會(huì)話) and Cookies?一節(jié)。
  • yii\web\UrlManager: 支持URL地址解析和創(chuàng)建, 詳情請(qǐng)參考?URL 解析和生成?一節(jié)。
  • yii\web\User: 代表認(rèn)證登錄用戶信息,僅在yii\web\Application 網(wǎng)頁(yè)應(yīng)用中可用, 詳情請(qǐng)參考?認(rèn)證?一節(jié)。
  • yii\web\View: 支持渲染視圖,詳情請(qǐng)參考?Views?一節(jié)。
Article précédent: Article suivant: