<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                # 別名(Aliases) 別名用來表示文件路徑和 URL,這樣就避免了在代碼中硬編碼一些絕對路徑和 URL。一個別名必須以?`@`?字符開頭,以區別于傳統的文件路徑和 URL。Yii 預定義了大量可用的別名。例如,別名?`@yii`?指的是 Yii 框架本身的安裝目錄,而?`@web`?表示的是當前運行應用的根 URL。 ## 定義別名 你可以調用 Yii::setAlias() 來給文件路徑或 URL 定義別名: ~~~ // 文件路徑的別名 Yii::setAlias('@foo', '/path/to/foo'); // URL 的別名 Yii::setAlias('@bar', 'http://www.example.com'); ~~~ > 注意:別名所指向的文件路徑或 URL 不一定是真實存在的文件或資源。 可以通過在一個別名后面加斜杠?`/`?和一至多個路徑分段生成新別名(無需調用 Yii::setAlias())。我們把通過 Yii::setAlias() 定義的別名稱為**根別名**,而用他們衍生出去的別名成為**衍生別名**。例如,`@foo`?就是根別名,而?`@foo/bar/file.php`?是一個衍生別名。 你還可以用別名去定義新別名(根別名與衍生別名均可): ~~~ Yii::setAlias('@foobar', '@foo/bar'); ~~~ 根別名通常在[引導](http://www.yiichina.com/doc/guide/2.0/runtime-bootstrapping)階段定義。比如你可以在[入口腳本](http://www.yiichina.com/doc/guide/2.0/structure-entry-scripts)里調用 Yii::setAlias()。為了方便起見,[應用](http://www.yiichina.com/doc/guide/2.0/structure-applications)提供了一個名為?`aliases`?的可寫屬性,你可以在應用[配置](http://www.yiichina.com/doc/guide/2.0/concept-configurations)中設置它,就像這樣: ~~~ return [ // ... 'aliases' => [ '@foo' => '/path/to/foo', '@bar' => 'http://www.example.com', ], ]; ~~~ ## 解析別名 你可以調用 Yii::getAlias() 命令來解析根別名到對應的文件路徑或 URL。同樣的頁面也可以用于解析衍生別名。例如: ~~~ echo Yii::getAlias('@foo'); // 輸出:/path/to/foo echo Yii::getAlias('@bar'); // 輸出:http://www.example.com echo Yii::getAlias('@foo/bar/file.php'); // 輸出:/path/to/foo/bar/file.php ~~~ 由衍生別名所解析出的文件路徑和 URL 是通過替換掉衍生別名中的根別名部分得到的。 > 注意:Yii::getAlias() 并不檢查結果路徑/URL 所指向的資源是否真實存在。 根別名可能也會包含斜杠?`/`。Yii::getAlias() 足夠智能到判斷一個別名中的哪部分是根別名,因此能正確解析文件路徑/URL。例如: ~~~ Yii::setAlias('@foo', '/path/to/foo'); Yii::setAlias('@foo/bar', '/path2/bar'); echo Yii::getAlias('@foo/test/file.php'); // 輸出:/path/to/foo/test/file.php echo Yii::getAlias('@foo/bar/file.php'); // 輸出:/path2/bar/file.php ~~~ 若?`@foo/bar`?未被定義為根別名,最后一行語句會顯示為?`/path/to/foo/bar/file.php`。 ## 使用別名 別名在 Yii 的很多地方都會被正確識別,無需調用 Yii::getAlias() 來把它們轉換為路徑/URL。例如,yii\caching\FileCache::cachePath 能同時接受文件路徑或是指向文件路徑的別名,因為通過?`@`?前綴能區分它們。 ~~~ use yii\caching\FileCache; $cache = new FileCache([ 'cachePath' => '@runtime/cache', ]); ~~~ 請關注 API 文檔了解特定屬性或方法參數是否支持別名。 ## 預定義的別名 Yii 預定義了一系列別名來簡化常用路徑和 URL 的使用: * `@yii`?-?`BaseYii.php`?文件所在的目錄(也被稱為框架安裝目錄) * `@app`?- 當前運行的應用 yii\base\Application::basePath * `@runtime`?- 當前運行的應用的 yii\base\Application::runtimePath * `@vendor`?- yii\base\Application::vendorPath * `@webroot`?- 當前運行應用的 Web 入口目錄 * `@web`?- 當前運行應用的根 URL `@yii`?別名是在[入口腳本](http://www.yiichina.com/doc/guide/2.0/structure-entry-scripts)里包含?`Yii.php`?文件時定義的,其他的別名都是在[配置應用](http://www.yiichina.com/doc/guide/2.0/concept-configurations)的時候,于應用的構造方法內定義的。 ## 擴展的別名 每一個通過 Composer 安裝的?[擴展](http://www.yiichina.com/doc/guide/2.0/structure-extensions)?都自動添加了一個別名。該別名會以該擴展在?`composer.json`?文件中所聲明的根命名空間為名,且他直接代指該包的根目錄。例如,如果你安裝有?`yiisoft/yii2-jui`?擴展,會自動得到?`@yii/jui`?別名,它定義于[引導啟動](http://www.yiichina.com/doc/guide/2.0/runtime-bootstrapping)階段: ~~~ Yii::setAlias('@yii/jui', 'VendorPath/yiisoft/yii2-jui'); ~~~
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看