我正在Codeigniter中创建我的站点,在那里我需要为每次页面访问更新表字段上的timestamp
。由于我不熟悉Codeigniter中的控制流,我不知道该在哪里编写代码?它应该对网站周围的所有页面都是通用的。
您可以在application/config/hooks.php 中使用钩子
http://ellislab.com/codeigniter/user_guide/general/hooks.html
$hook['pre_controller'] = array(
'class' => 'MyClass',
'function' => 'Myfunction',
'filename' => 'Myclass.php',
'filepath' => 'hooks',
'params' => array('beer', 'wine', 'snacks')
);
最简单的方法可能是将其放入控制器的构造函数中,因为它在每次页面加载时都会被调用。
创建一个模型并将模型名称添加到config/autoload.php搜索行:
$autoload['model']=array();
然后(在您的模型制作完成后)您所需要做的就是在每个控制器上请求updateentry()函数;
$this->update->update_entry();
型号示例:
类更新扩展CI_Model{
function update_entry() { $timestamp = time(); $this->db->where('id',1)->update('entries', array('timestamp' => $timestamp)); }
}
OR简单地将其放入__Construct