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

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                # 第5章 TP5.0 控制器 ============================================== ## 1、新建控制器(前臺模塊為例) 1、在前臺控制器目錄下(C:\AppServ\www\tp5\application\index\controller) 新建控制器文件 User.php 2、User.php文件中如何書寫 <?php // 聲明命名空間 namespace app\index\controller; // 聲明控制器 class User{ // 聲明方法 public function index(){ return "我是User控制器下的index方法"; } } 3、地址欄訪問 http://www.tp.com/index.php/Index/user/index 4、注意: 1、控制器文件名必須首字母大寫,文件名采用駝峰命名。 2、控制器名必須跟文件名一一對應 3、命名空間必須和文件名對應 namespace app\index\controller; C:\AppServ\www\tp5\application\index\controller 4、如果控制器名字采用駝峰命名 UserInfo.php http://www.tp.com/index.php/Index/user_info/index ## 2、控制器如何加載頁面 1、系統View類 $view=new \think\View; return $view->fetch(); use think\View; $view=new View(); return $view->fetch(); 2、系統Controller類 1、需要繼承系統控制器類 use think\Controller; // 聲明控制器 class User extends Controller 2、直接使用系統控制器類的方法 return $this->fetch(); 3、系統函數 return view(); ## 3、數據輸出 1、在應用配置文件中可以設置數據返回格式 'default_return_type' => 'json', #默認是html 2、ajax請求的時候如何返回數據 'default_ajax_return' => 'json', ## 4、控制器的初始化 1、控制器初始化方法必須繼承系統控制器 // 控制器的初始化方法 public function _initialize(){ echo "我是初始化方法"; } 2、只要調用控制器下的任意方法,都會先找初始化方法 3、控制器初始化方法的使用 1、可以用來提取控制器下公共的代碼 2、后臺權限把控 ## 5、前置操作 0、前置方法 把一些公共的設置提取成方法進行調用 1、前置方法必須結合系統控制器 2、核心設置 // 前置方法屬性 protected $beforeActionList=[ 'one', // 不想讓誰使用前置方法two 'two'=>['except'=>"index"], // 僅僅可以讓誰使用前置方法three 'three'=>['only'=>'index'], ]; ## 6、頁面跳轉 0、頁面跳轉基于系統控制器類,所以控制器必須繼承系統控制器 1、方法所在路徑 C:\AppServ\www\tp5\thinkphp\library\traits\controlle\Jump.php 2、跳轉方式 a、成功跳轉 // $this->success(提示信息,跳轉地址,用戶自定義數據,跳轉跳轉,header信息); // 跳轉地址未設置時 默認返回上一個頁面 $this->success('跳轉成功',url('index/index')); b、失敗跳轉 $this->error('登錄失敗'); 3、跳轉方法給模板頁面的數據 1、$code 返回的狀態碼 成功 1 失敗 0 2、$msg 頁面的提示信息 3、$wait 等待時間 4、$url 制定跳轉頁面 默認返回上一個頁面 5、$data 用戶返回的數據 4、相關配置文件 // 默認跳轉頁面對應的模板文件 'dispatch_success_tmpl' => THINK_PATH . 'tpl' . DS . 'dispatch_jump.tpl', 'dispatch_error_tmpl' => THINK_PATH . 'tpl' . DS . 'dispatch_jump.tpl', 4、修改成功和失敗的模板頁面 a、修改默認文件 1、默認文件位置 C:\AppServ\www\tp5\thinkphp\tpl\dispatch_jump.php 2、根據原有代碼進行修改 在成功失敗模板頁面進行修改 b、用戶自定義頁面跳轉模板 1、修改配置文件 'dispatch_success_tmpl' => THINK_PATH . 'tpl' . DS . 'success.tpl', 'dispatch_error_tmpl' => THINK_PATH . 'tpl' . DS . 'error.tpl', 2、在系統模板目錄下 (C:\AppServ\www\tp5\thinkphp\tpl) 新建 success.php 和error.php 3、自定義書寫跳轉頁面 ## 7、重定向 1、作用: 重定向(Redirect)就是通過各種方法將各種網絡請求重新定個方向轉到其它位置 2、使用: redirect('跳轉地址','其他參數',code,'隱士參數'); $this->redirect('index/index',['id'=>100,'name'=>'abc']); ## 8、空控制器和空操作 1、空操作 # 主要解決一些用戶惡意的地址欄輸入,報錯影響交互 public function _empty(){ $this->redirect('index/index'); } 2、空控制器 // 聲明命名空間 namespace app\index\controller; use think\Controller; // 聲明控制器 class Error extends Controller{ // index public function index(){ $this->redirect('index/index'); } // 空操作 public function _empty(){ $this->redirect('index/index'); } } 3、注意: 1、網站上線的時候每一個控制器都必須添加空操作 2、不論前臺后臺都需要寫一個空控制器 ## 9、使用命令行 1、切換到網站的根目錄下 2、輸入php think 3、使用 1、創建控制器 php think make:controller app\index\controller\Goods 2、創建數據模型 php think make:model app\index\model\Goods 3、清空runtime 臨時文件 php think clear ## 10、資源控制器 1、使用命令行創建控制器 php think make:controller app\index\controller\Goods 2、資源控制器一般配合資源路由使用
                  <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>

                              哎呀哎呀视频在线观看