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

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                [TOC] > [thinkphp 6](http://www.hmoore.net/manual/thinkphp6_0/1037479) ## 開啟調試模式 根目錄的`.example..env`改為`.env`文件 ## Facade 使類無需實例化而直接進行靜態方式調用 > [參考](http://www.hmoore.net/manual/thinkphp6_0/1037491) 注意事項, 此時的facade 無法被 IDE 識別,可通過注釋方法識別 ``` /** * @method string hello(string $name) static 讀取緩存并刪除 */ class Test extends Facade{ ``` 就可以識別函數 若想靜態調用系統函數,使用`think\facade\xxx` 的命名空間 ## 多應用模式 ``` ├─app 應用目錄 │ ├─index 主應用 │ │ ├─controller 控制器目錄 │ │ ├─config 配置目錄(優先) │ │ └─ ... 更多類庫目錄 │ ├─admin 后臺應用 │ │ ├─controller 控制器目錄 │ │ ├─config 配置目錄(優先) │ │ └─ ... 更多類庫目錄 │ ├─public WEB目錄(對外訪問目錄) │ ├─admin.php 后臺入口文件 │ ├─index.php 入口文件 │ ├─config 應用配置目錄 │ ├─index index應用配置 │ └─admin admin應用配置 │ ├─route 路由定義目錄 │ ├─index index應用路由定義目錄 │ └─admin admin應用路由定義目錄 │ ├─runtime 運行時目錄 │ ├─index index應用運行時目錄 │ └─admin admin應用運行時目錄 ``` 1. 開啟多應用 `config/app.php` ``` 'auto_multi_app' => true, 'default_app' => 'index', //指定默認模塊 ``` ### 自動生成應用 把`build.php`文件放到app目錄下執行 `php think build 應用名` ## 中間件 1. 生成中間件 `php think make:middleware Check ` 2.設置中間件 ``` class InAppCheck { public function handle($request, \Closure $next) { if (preg_match('~micromessenger~i', $request->header('user-agent'))) { $request->InApp = 'WeChat'; } else if (preg_match('~alipay~i', $request->header('user-agent'))) { $request->InApp = 'Alipay'; } return $next($request); } } ``` 3.應用中間件 ``` //在對應的 middleware.php return [ app\middleware\InAppCheck::class, ]; ``` 或者路由中間件 ``` Route::rule('hello/:name','hello') ->middleware([\app\middleware\Auth::class]); ``` ## 路由 ### 變量規則 自定義默認的規則 `'default_route_pattern' => '[\w\-]+', ` 局部變量 ``` Route::get('new/:name', 'News/read') ->pattern(['name' => '[\w|\-]+']); ``` 全局變量規則 ``` Route::pattern([ 'name' => '\w+', 'id' => '\d+', ]); ``` ## 驗證器的推薦用法 使用顯示路徑形式說明,方便IDE追蹤 ``` try{ $data = $this->request->post(); validate(\app\api\validate\ChildrenValidate::class) ->scene("binding") ->check($data); // todo... }catch(ValidateException|CustomException $e){ $this->error($e->getError()); } ```
                  <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>

                              哎呀哎呀视频在线观看