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

                ??碼云GVP開源項目 12k star Uniapp+ElementUI 功能強大 支持多語言、二開方便! 廣告
                ## 控制器定義 控制器文件通常放在`controller`下面,類名和文件名保持大小寫一致,并采用駝峰命名(首字母大寫)。 如果要改變`controller`目錄名,需要在`route.php`配置文件中設置: ``` 'controller_layer' => 'controllers', ``` 如果使用的是單應用模式,那么控制器的類的定義如下: ~~~ <?php namespace app\controller; class User { public function login() { return 'login'; } } ~~~ 控制器類文件的實際位置則變成 ~~~ app\controller\User.php ~~~ 訪問URL地址是(假設沒有定義路由的情況下) ~~~ http://localhost/user/login ~~~ 如果你的控制器是`HelloWorld`,并且定義如下: ~~~ <?php namespace app\controller; class HelloWorld { public function hello() { return 'hello,world!'; } } ~~~ 控制器類文件的實際位置是 ~~~ app\controller\HelloWorld.php ~~~ 訪問URL地址是(假設沒有定義路由的情況下) ~~~ http://localhost/index.php/HelloWorld/hello ~~~ 并且也可以支持下面的訪問URL ~~~ http://localhost/hello_world/hello ~~~ ## 多應用模式 多應用模式下,控制器類定義僅僅是命名空間有所區別,例如: ~~~ <?php namespace app\shop\controller; class User { public function login() { return 'login'; } } ~~~ 控制器類文件的實際位置是 ~~~ app\shop\controller\User.php ~~~ 訪問URL地址是(假設沒有定義路由的情況下) ~~~ http://localhost/index.php/shop/user/login ~~~ ## 控制器后綴 如果你希望避免引入同名模型類的時候沖突,可以在`route.php`配置文件中設置 ``` // 使用控制器后綴 'controller_suffix' => true, ``` 這樣,上面的控制器類就需要改成 ~~~ <?php namespace app\controller; class UserController { public function login() { return 'login'; } } ~~~ 相應的控制器類文件也要改為 ~~~ app\controller\UserController.php ~~~ ## 渲染輸出 默認情況下,控制器的輸出全部采用`return`的方式,無需進行任何的手動輸出,系統會自動完成渲染內容的輸出。 下面都是有效的輸出方式: ~~~ <?php namespace app\index\controller; class Index { public function hello() { // 輸出hello,world! return 'hello,world!'; } public function json() { // 輸出JSON return json($data); } public function read() { // 渲染默認模板輸出 return view(); } } ~~~ > 控制器一般不需要任何輸出,直接`return`即可。并且控制器在`json`請求會自動轉換為`json`格式輸出。 >[danger] 不要在控制器中使用包括`die`、`exit`在內的中斷代碼。如果你需要調試并中止執行,可以使用系統提供的`halt`助手函數。 ``` halt('輸出測試'); ``` ## 多級控制器 支持任意層次級別的控制器,并且支持路由,例如: ~~~ <?php namespace app\index\controller\user; class Blog { public function index() { return 'index'; } } ~~~ 該控制器類的文件位置為: ~~~ app/index/controller/user/Blog.php ~~~ 訪問地址可以使用 ~~~ http://serverName/index.php/user.blog/index ~~~ 由于URL訪問不能訪問默認的多級控制器(可能會把多級控制器名誤識別為URL后綴),因此建議所有的多級控制器都通過路由定義后訪問,如果要在路由定義中使用多級控制器,可以使用: ~~~ Route::get('user/blog','user.blog/index'); ~~~
                  <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>

                              哎呀哎呀视频在线观看