我想覆盖Active Record类(至少它的一些功能)。我在“application”文件夹中的一个名为“database”的文件夹中创建了一个名为spj_DB_active_rec.php的文件,但它不起作用。
类名是spj_DB_active_record
<?php
class spj_DB_active_record extends CI_DB_active_record {
function update($table = '', $set = NULL, $where = NULL, $limit = NULL) {
if (is_array($set) && empty($set['modified'])) {
$this->load->helper('date');
$data['modified'] = date('Y-m-d H:i:s',now());
}
log_message('debug','TEST UPDATE '.date('Y-m-d H:i:s',time()));
return parent::update($table, $set, $where, $limit);
}
function insert($table = '', $set = NULL) {
if (is_array($set) && empty($set['modified'])) {
$this->load->helper('date');
$data['modified'] = date('Y-m-d H:i:s',now());
}
if (is_array($set) && empty($set['created'])) {
$this->load->helper('date');
$data['created'] = date('Y-m-d H:i:s',now());
}
log_message('debug','TEST INSERT '.date('Y-m-d H:i:s',time()));
return parent::insert($table, $set);
}
}
答案 0 :(得分:3)
可能这对你来说是新闻,但CodeIgniter 2.0并没有正式支持扩展核心Active Record类。所以你想要做的是(不幸的是)通过在磁盘上的某个地方放置一个类来“不可能”。
但你可以尝试这个workaround。