如何在发送到视图之前修改数组中的数据?

时间:2011-07-05 16:31:57

标签: php arrays codeigniter controller

我目前将一些数据作为数组从我的CodeIgniter控制器发送到视图:

//Send data to template
$this->load->view('generator/content', $data);

$data的位置:

$data = array_merge($page, $posts);

我希望在将$posts中的一些数据发送到视图之前通过调用我的库中的函数/方法来修改它们:

if (!empty($posts)) {   
    $posts = $this->my_library->modifyPosts($posts, $page_ID);
}

函数/方法中的内容包括str_replace,爆炸字符串,时间格式化以及通常将数据从数组转换为可用格式。根据我的理解,最好使用库来完成这些工作。

有没有办法可以重建并从库中将数组返回到控制器,这样当我将数据传递给视图时,它是否可以显示?

1 个答案:

答案 0 :(得分:0)

你应该从控制器调用库函数。所以在控制器中你可能有

$posts = $this->my_library->modify_something($posts);

然后你的图书馆可以做到这一点并以新的“可用格式”返回$posts

然后就可以了,将数据添加到$data数组并将其传递给您的视图。