【发布时间】:2021-02-22 02:29:21
【问题描述】:
我有一个函数可以获取当前日期时间并在控制器中添加 30 分钟。我正在将该数据发送到视图中并显示它。
控制器
public function index(){
$data['time'] = $this->set_time();
$this->load->view('templates/location_header');
$this->load->view('pages/confirmation', $data);
$this->load->view('templates/footer');
}
public function set_time(){
date_default_timezone_set('Asia/Colombo');
$time = date('Y-m-d H:i', strtotime('+30 minute'));
return $time;
}
查看
<h5 class= "order-time"> Your order will arrive in : <?php echo $time ?></h5>
我的问题是,我可以固定视图中显示的日期/时间,以便每当我刷新时它都会保持在返回的原始日期/时间?
例如,当我第一次加载页面时,返回的日期/时间是2020/11/09 10:30。
如果我在 5 分钟内再次刷新页面,我怎样才能保持时间 2020/11/09 10:30 而不是得到 2020/11/09 10:35。
谢谢。
【问题讨论】:
-
您真正的问题是 - 如何使变量跨页面持久化?答案是使用 Sessions。所以请阅读如何使用 CI Sessions。
-
您可以按照@TimBrownlaw 所述使用会话,或者,如果此时间不依赖于会话但与订单相关,您可以将未来日期与其余订单数据一起保存到数据库中。你的具体情况是什么?
-
时间其实和订单有关。即使我使用会话,当我手动重新加载页面时值仍然会改变。重新加载仅用于测试目的,因为没有自动刷新页面。我只是想让初始日期固定。如果没有其他方法,我觉得保存到数据库将是最好的选择。谢谢
标签: php codeigniter datetime