<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>

                ## 關于安裝 `6.0`版本基于PHP`7.1`版本開發,所以你的PHP運行環境必須是PHP`7.1+`(注意有時候你的命令行和WEB的PHP版本是不同的),最新版本已經兼容PHP`8.0`。 >[danger] 新版必須使用`composer`安裝,因為`6.0`完全依賴`composer`使用,如果你**通過git下載安裝將不能正常使用**。如果你使用`composer`安裝ThinkPHP過程特別慢,請使用阿里云鏡像或者科學上網。 對于新手而言,推薦的安裝方式是 ``` composer create-project topthink/think tp ``` 系統會自動為你生成一個項目所需要的目錄架構和需要的文件。 記住,無論如何,不要在項目里面修改核心框架目錄下的任何文件,除了`vendor`目錄之外的其它目錄都屬于你的項目代碼,可以隨意修改。 安裝完成之后,進入`cmd`控制臺,使用內置指令啟動服務。 ``` cd tp php think run ``` 現在你可以開始你的TP6開發之旅了。 在瀏覽器里面輸入 ``` http://localhost:8000 ``` 就會看到熟悉的歡迎頁面(并顯示當前安裝的版本號) ![](https://img.kancloud.cn/0a/01/0a013856b8b47af65e054dd2e2e18c3b_853x430.png =480x) 如果需要更改默認端口,可以使用 ``` php think run -p 80 ``` 請確保端口沒有被占用。 >[info] 該指令僅供學習和測試過程使用(免去安裝WEB服務器的麻煩),不建議用于正式上線部署。 ## 目錄結構 默認安裝后的目錄結構如下: ~~~cmd www WEB部署目錄(或者子目錄) ├─app 應用目錄 │ ├─controller 控制器目錄 │ ├─common.php 公共函數文件 │ ├─event.php 事件定義文件 │ ├─ExceptionHandle.php應用異常處理類 │ ├─middleware.php 全局中間件定義文件 │ ├─provider.php 容器綁定定義文件 │ └─Request.php 應用請求對象類 │ ├─config 配置目錄 │ ├─app.php 應用配置 │ ├─cache.php 緩存配置 │ ├─console.php 控制臺配置 │ ├─cookie.php Cookie配置 │ ├─database.php 數據庫配置 │ ├─filesystem.php 文件磁盤配置 │ ├─lang.php 多語言配置 │ ├─log.php 日志配置 │ ├─middleware.php 中間件配置 │ ├─route.php URL和路由配置 │ ├─session.php Session配置 │ ├─trace.php Trace配置 │ └─view.php 視圖配置 │ ├─view 視圖目錄 ├─route 路由定義目錄 │ ├─route.php 路由定義文件 │ └─ ... │ ├─public WEB目錄(對外訪問目錄) │ ├─index.php 入口文件 │ ├─router.php 快速測試文件 │ └─.htaccess 用于apache的重寫 │ ├─extend 擴展類庫目錄 ├─runtime 應用的運行時目錄(可寫,可定制) ├─vendor 第三方類庫目錄(Composer依賴庫) ├─.example.env 環境變量示例定義文件(參考) ├─composer.json composer 定義文件 ├─LICENSE.txt 授權說明文件 ├─README.md README 文件 ├─think 命令行入口文件 ~~~ 系統生成的目錄結構是經過精心設計的,沒有必要做任何的調整,包括入口文件位置。所以確保你的WEB目錄指向`public`目錄而不是應用根目錄。 `app`目錄名對應的同時也是應用的根命名空間(而且不能更改),并且按照`PSR-4`規范進行應用類庫的自動加載。 對于系統的緩存目錄、日志目錄和`Session`目錄都是可以自定義的,但沒有必要自定義`runtime`目錄。 所以,在你對應用的目錄結構進行更改之前,請確認你是否需要這么做,以及你明確知道相應的后果。 ## 調試模式 默認安裝后使用的是部署模式,開發過程中應當開啟調試模式,便于調試問題。 把應用根目錄下的`.example.env` 文件重命名為`.env`文件,這是用于本地開發的環境變量定義文件。 該文件默認已經開啟了調試模式(確認是否包含下面一行環境變量定義)。 ``` APP_DEBUG = TRUE; ``` ThinkPHP`6.0`版本是不支持通過配置參數開啟調試模式,在提交版本庫的時候會自動忽略`.env`文件,這樣服務器部署后的代碼就是部署模式。 新版默認安裝會安裝`symfony/var-dumper`庫,因此你會看到不同以往樣式的`dump`輸出,并且可以使用其自帶的`dd`輸出并終止執行函數。 如果不喜歡這個調試輸出的風格,可以直接卸載這個擴展而不會有任何的影響,并且依然可以使用`dump`函數。 ``` composer remove symfony/var-dumper ``` ## 配置文件 新版不再使用慣例配置文件,項目的默認配置(稱之為全局配置,對所有應用適用)在安裝完成后已經自動生成在項目根目錄的`config`目錄下,并且都提供了清晰的注釋。 如果是多應用模式的話,每個應用可以有獨立的配置文件,通常是在應用目錄下的`config`目錄。應用配置文件會覆蓋全局配置文件中的同名參數。 配置文件默認使用PHP數組格式(后綴為`php`),你可以在環境變量中定義配置文件的后綴來改變配置文件定義格式,例如: ``` CONFIG_EXT = ini; // 支持ini/yaml/json格式 ``` 和之前版本的一個比較大的區別在于配置參數不再支持動態設置,所以下面的用法是不支持的 ``` Config::set('app.app_host', 'thinkphp.cn'); ``` 實際上,大多數時候你甚至不需要去操作配置類(除非在開發一些擴展或中間件的時候需要讀取配置參數),框架會在適當的時候自動加載這些配置,你不需要關心什么時候載入配置,或者什么時候讀取了某個參數。因為你實際操作某個類庫的時候,配置已經讀取完成并自動工作。 >[info] 關于核心框架具體有哪些配置參數,建議你仔細參考根目錄`config`下的一系列配置文件,其中都有詳細的注釋說明。 如果你在開發環境和部署環境需要區分不同的配置,應當使用環境變量并保持一套統一的配置文件,`config`目錄下自動生成的配置文件就大量使用了環境變量,例如數據庫配置文件通常會使用如下配置定義: ``` // 數據庫類型 'type' => Env::get('database.type', 'mysql'), // 服務器地址 'hostname' => Env::get('database.hostname', '127.0.0.1'), // 數據庫名 'database' => Env::get('database.database', ''), // 用戶名 'username' => Env::get('database.username', 'root'), // 密碼 'password' => Env::get('database.password', ''), // 端口 'hostport' => Env::get('database.hostport', '3306'), ``` 對于本地開發環境,你可以使用前面提到的`.env`文件設置環境變量。 >[danger] 值得引起重視的是,`6.0`版本的`Request`類是沒有任何配置參數的,具體原因后面會提及。 `V6.0.8+`版本開始,可以支持多環境配置文件,例如你可以定義多個環境變量定義文件 ``` .env.develop .env.preview .env.testing ``` 然后可以在入口文件中設置當前使用的環境變量文件名
                  <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>

                              哎呀哎呀视频在线观看