php - Codeigniter 2.0 中是否可以使用析构函数?

标签 php codeigniter

类似于在 Codeigniter 中构建类构造函数,它在类中执行其他函数之前执行一段代码:

<?php
class Blog extends CI_Controller {

       public function __construct()
       {
            parent::__construct();
            // Your own constructor code
       }
}
?>

有没有一种方法可以构建一个“析构函数”,在您调用的函数完成后正确处理一段代码?这段代码似乎没有在我的应用程序中处理“页脚”:

function __destruct() {
    $this->load->view('footer');
}

最佳答案

函数 __destruct(),在对象被销毁之前调用。它实际上并不特定于 CodeIgniter。还要记住,如果您在脚本的最后让对象保持事件状态,那么当 PHP 关闭时它会被破坏,可能会出现各种问题。因此,如果可能的话,在脚本末尾调用 unset($obj) 可能是个好主意。

更新

现在,在您添加了您的意图之后,我可以说它不会起作用:)。当 CI 父类(super class)被销毁时, Controller 被销毁,即在所有内容被分派(dispatch)并发送到客户端之后。作为一种快速替代方法(如果紧急),我建议将操作方法​​设为私有(private),以将所有操作请求路由到 __call,这将为您的所有操作添加页眉/页脚。但是,如果不是很紧急,我会在上类时稍微挖掘一下,然后提出更好的建议...

关于php - Codeigniter 2.0 中是否可以使用析构函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5444835/

相关文章:

php - 即使在 chmod 777 之后,require_once() 权限也被拒绝

javascript - jQuery Ajax 在第二次提交时发送两次,在第三次提交时发送三次

php - 使用 codeigniter 显示数据库中的图像及其附带信息

Javascript getElementByID 方法

php - 如果发生重复输入错误,如何将用户重定向到其他页面?

PHP - 非阻塞,传出 TCP 连接 - 如何?

php - 无法在 PHP 数组中获取值,但 var_dump 显示它存在

PHP:使用相对图像路径从指定目录中提取所有图像

php - CodeIgniter - 从空值创建默认对象

php - 如何使用 CodeIgniter 将图像保存在文件夹中?