如何从 codeigniter 活动记录中的 DATETIME 字段中获取 d-m-Y 格式的日期?
Posted
技术标签:
【中文标题】如何从 codeigniter 活动记录中的 DATETIME 字段中获取 d-m-Y 格式的日期?【英文标题】:How to fetch Date in d-m-Y format from a DATETIME field in codeigniter active records? 【发布时间】:2017-01-24 13:10:45 【问题描述】:我有一个名为 tbl_user 的表,其中 user_added_date 是 DATETIME (Y-m-d H:i:s)
类型。
我正在尝试使用以下活动记录获取所有数据:-
$this->db->select('user_name AS Name, user_username AS Username,
user_mobile AS Mobile,
DATE(user_added_date) AS `Joining Date`');
$dataResult = $this->db->get('user');
现在,我正在获取mm/dd/YYYY
格式的数据。
如何获取 dd-mm-YYYY 格式的数据?
编辑:-
在我更新了 Gordon 先生所说的答案后,我遇到了这个问题,这个问题更具体到 codeigniter。
更新的活动记录是
$this->db->select('user_name AS Name,
user_username AS Username,
user_mobile AS Mobile,
DATE_FORMAT( user_added_date, "%d-%m-%Y" ) AS `Joining Date`,
DATE(user_last_activity) AS `Last Time Active`');
$dataResult = $this->db->get('user');
产生此错误的原因:-
Error Number: 1054
Unknown column '"%d-%m-%Y"' in 'field list'
SELECT `user_name` AS Name, `user_username` AS Username, `user_mobile` AS Mobile, DATE_FORMAT( user_added_date, `"%d-%m-%Y"` ) AS `Joining Date`, DATE(user_last_activity) AS `Last Time Active` FROM (`tbl_user`)
Filename: /var/www/html/custom/ci/tharjumal/controllers/admin/user.php
Line Number: 103
这更多是由于活动记录属性将“%d-%m-%Y”封装在 (`) 符号内,因此将其视为列。
我该如何解决这个问题?
【问题讨论】:
【参考方案1】:您可以在查询中使用date_format()
:
$this->db->select('user_name AS Name, user_username AS Username,
user_mobile AS Mobile,
date_format(user_added_date, "%d/%m/%Y") AS `Joining Date`');
【讨论】:
"%d/%m/%y"
在使用倾斜符号构建带有活动记录的查询时导致一些错误。
@Saswat 。 . .如果您将返回的值视为日期(而不是字符串),则将其转换为适当的格式 - 或根本不转换。
@GordonLinoff,活动记录有问题。我放弃了使用活动记录的想法,这很好。以上是关于如何从 codeigniter 活动记录中的 DATETIME 字段中获取 d-m-Y 格式的日期?的主要内容,如果未能解决你的问题,请参考以下文章
活动记录 CodeIgniter 2 中的这个查询有啥问题?