codeigniter“after-method”相当于_remap()

时间:2012-02-07 03:01:56

标签: php codeigniter

如果CodeIgniter的_remap()在之前被称为,它会触及控制器中的任何方法,那么在方法之后是否有一个 after-method 等效项被称为?

场景是

  1. 通常会在构造函数或该控制器的重映射中预先检查登录凭据等内容。这是预方法区域。
  2. 之后,在方法中构建页面数据。
  3. 然后通过调用模板解析器或加载视图来加载并显示视图/模板。
  4. 我希望第三步自动进行自动 after-method 功能,这可以由我的所有控制器继承,所以我不必每次调用解析器/加载器我制作方法的时间?

1 个答案:

答案 0 :(得分:2)

Codeigniter获得了一个名为“hooks”的功能。我确信这就是你要找的东西。

来自hooks页面; 以下是可用挂钩点的列表。

  

<强> pre_system   在系统执行期间很早就打电话。此时只加载了基准和钩子类。没有发生路由或其他进程。

     

<强> pre_controller   在调用任何控制器之前立即调用。所有基类,路由和安全检查都已完成。

     

<强> post_controller_constructor   在实例化控制器之后立即调用,但在任何方法调用发生之前调用。

     

<强> post_controller   在控制器完全执行后立即调用。

     

<强> display_override   覆盖_display()函数,用于在系统执行结束时将最终页面发送到Web浏览器。这允许您使用自己的显示方法。请注意,您需要使用$ this-&gt; CI =&amp; amp;来引用CI超级项目。 get_instance()然后通过调用$ this-&gt; CI-&gt; output-&gt; get_output()

来获得最终数据      

<强> cache_override   使您可以在输出类中调用自己的函数而不是_display_cache()函数。这允许您使用自己的缓存显示机制。

     

<强> post_system   在最终呈现的页面被发送到浏览器之后,在最终数据发送到浏览器之后系统执行结束时调用。