ThinkPHP3.2基礎教程(36)--控制器-前置和後置操作

來源:互聯網
上載者:User

標籤:extend   server   控制器   function   檔案   extends   定義   after   沒有   

  前置和後置操作指的是在執行某個操作方法之前和之後會自動調用的方法,不過僅對存取控制器有效。

  其他的分層控制器層和內部調用控制器的情況下前置和後置操作是無效的。

  系統會檢測當前操作是否具有前置和後置操作,如果存在就會按照順序執行,前置和後置操作的定義方式如下:

    <?php    namespace Home\Controller;    use Think\Controller;    class IndexController extends Controller{        //前置操作方法        public function _before_index(){            echo ‘before<br/>‘;        }        public function index(){            echo ‘index<br/>‘;        }        //後置操作方法        public function _after_index(){            echo ‘after<br/>‘;        }    }

  如果我們訪問 http://serverName/index.php/Home/Index/index,結果會輸出

beforeindexafter

  前置和後置操作的注意事項如下:
  1. 如果當前的操作並沒有定義操作方法,而是直接渲染模板檔案,那麼如果定義了前置和後置方法的話,依然會生效。真正有模板輸出的可能僅僅是當前的操作,前置和後置操作一般情況是沒有任何輸出的。
  2. 需要注意的是,在有些方法裡面使用了exit或者錯誤輸出之類的話 有可能不會再執行後置方法了。例如,如果在當前操作裡面調用了系統Action的error方法,那麼將不會再執行後置操作,但是不影響success方法的後置方法執行。

 

ThinkPHP3.2基礎教程(36)--控制器-前置和後置操作

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.