【问题标题】:In Codeigniter what is the purpose of hook ? Why we have to create?在 Codeigniter 中 hook 的目的是什么?为什么我们要创造?
【发布时间】:2023-04-01 04:53:01
【问题描述】:

我是 Codeigniter 的新手。在每次采访中,都询问了钩子。我不明白什么是钩子为什么我必须使用它?它有什么好处。

【问题讨论】:

标签: php codeigniter codeigniter-2 codeigniter-3


【解决方案1】:

这是在 codeigniter 中使用它的示例链接

https://qasimbadami.wordpress.com/2012/05/18/codeigniter-hooks-tutorial/

注意:假设你有一个大项目和近 100 个控制器,如果每次检查会话是否存在,每个 post 请求 而不是使用钩子

【讨论】:

    【解决方案2】:

    将钩子视为 codeigniter 中的中间件实现。 基本上,您可以扩展框架的基本功能,将代码添加到请求生命周期的特定时刻。

    这是 codeigniter 2 中可用的钩子列表

    以下是可用挂钩点的列表。

    pre_system 在系统执行过程中很早就被调用。只有 此时已经加载了基准和钩子类。无路由 或发生了其他过程。

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

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

    post_controller 在控制器完全运行后立即调用 执行。

    display_override 覆盖 _display() 函数,用于 在系统结束时将最终页面发送到网络浏览器 执行。这允许您使用自己的显示方法。笔记 您需要使用 $this->CI =& 来引用 CI 超级对象 get_instance() 然后最终的数据将由 调用 $this->CI->output->get_output()

    cache_override 使您能够 调用你自己的函数而不是 _display_cache() 函数 输出类。这允许您使用自己的缓存显示 机制。

    post_system 在最终呈现的页面发送到后调用 浏览器,在系统执行结束后数据最终确定 发送到浏览器。

    【讨论】:

      猜你喜欢
      • 2015-11-21
      • 2017-07-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-12-27
      • 2019-03-06
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多