代码点火器 - 在将检索到的值发送到视图之前处理从数据库检索到的值


Codeigniter - process a retrieved values from DB before sending them into a view

我想通过使用 php 函数显示从数据库中捕获的时间戳值,date()正确格式化我的日期时间。

但问题是 - 可以在将其传递给视图文件之前完成吗?
我想保持我的视图文件尽可能干净,涉及视图文件中的 php 函数。

使用 /models/content_model.php 从数据库中检索的项目:

function getPages($per_page){
    $this->db->order_by('id', 'desc');
    $query = $this->db->get('content', $per_page, $this->uri->segment(3));
    return $query->result();
}

然后,它由控制器/controllers/content.php处理:

...
// Get data
$componentData['results'] = $this->content_model->getPages(5);
...

并以views/content/home.php显示结果:

<?php
    <?php foreach($results as $item):?>
        echo $item->date_created;
     <?php endforeach;?>
?>

将输出一个日期(在数据库中键入时间戳),如下所示:2011-08-14 18:34:04

与其在视图文件views/content/home.php内部使用date()函数,不如通过视图外date()函数来处理它,不确定是否应该在模型或控制器中完成。

有什么建议吗?

你可以在控制器类中执行此操作。首先创建一个私有函数名称 DateProcess,并发送查询结果并根据需要处理日期。然后,您可以将流程数据发送到查看文件。