微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

前置和后置操作

如果当前访问的操作是存在(必须是实际在控制器中定义过)的,系统会检测当前操作是否具有前置和后置操作,如果存在就会按照顺序执行,前置和后置操作的方法名是在要执行的方法前面加 _before_和_after_,例如:

namespace HomeController;

use ThinkController;

class IndexController extends Controller{

      //前置操作方法

      public function _before_index(){

          echo 'before<br/>';

      }

      public function index(){

          echo 'index<br/>';

      }

      //后置操作方法

      public function _after_index(){

          echo 'after';

      }

}

如果我们访问 http://serverName/index.PHP,结果会输出

before

index

after

如果在操作方法里面使用了exit或者error方法的话 有可能不会再执行后置方法了,例如:

namespace HomeController;

use ThinkController;

class IndexController extends Controller{

      //前置操作方法

      public function _before_index(){

          echo 'before<br/>';

      }

      public function index(){

          echo 'index<br/>';

          exit;

      }

      //后置操作方法

      public function _after_index(){

          echo 'after';

      }

}

如果我们再次访问结果会输出

before

index

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐