Codeigniter - 使用日期格式将表记录导出为 CSV

Posted

技术标签:

【中文标题】Codeigniter - 使用日期格式将表记录导出为 CSV【英文标题】:Codeigniter - Exporting table records to CSV with Date Format 【发布时间】:2018-02-13 08:01:11 【问题描述】:

在这里,我以 CSV 格式导出表格结果,我想将日期列格式化为 2017-08-31, 13:10:12

谁能帮我修改这个mysql查询

$query = "SELECT DATE_FORMAT(created_on,'%Y-%m-%d , %H:%i:%s') AS OrderDate,transaction.order_id,transaction.payment_method FROM transaction";

这是我的导出到 CSV 函数

function ExportCSV()

    $this->load->dbutil();
    $this->load->helper('file');
    $this->load->helper('download');
    $delimiter = ",";
    $newline = "\r\n";
    $filename = "lugmah_sales_report.csv";
    $query = "SELECT DATE_FORMAT(created_on,'%Y-%m-%d , %H:%i:%s') AS OrderDate,transaction.order_id,transaction.payment_method FROM transaction";
    $result = $this->db->query($query);
    $data = $this->dbutil->csv_from_result($result, $delimiter, $newline);
    force_download($filename, $data);

【问题讨论】:

dev.mysql.com/doc/refman/5.5/en/… MySQL date format change的可能重复 @RealCheeseLord 我检查了该查询,但在 CSV/Excel 文件中,日期列显示空白值 【参考方案1】:

Arsee,你最好试试这个查询SELECT DATE_FORMAT(FROM_UNIXTIME(created_on), '%e %b %Y') AS OrderDate,

【讨论】:

【参考方案2】:

像这样更改您的查询

$query = "SELECT DATE_FORMAT(created_on,'%Y-%m-%d , %H:%i:%s') AS OrderDate FROM transaction";

注意:订单日期之间的空格应删除

【讨论】:

然后检查导出函数中是否有任何语法错误

以上是关于Codeigniter - 使用日期格式将表记录导出为 CSV的主要内容,如果未能解决你的问题,请参考以下文章

将发布日期与codeigniter中的时间戳进行比较

使用 CodeIgniter 以日期格式在数据库上计算每月、每年的日期

Codeigniter模型中的Mysql日期格式

使用codeigniter在CSV文件中以奇怪的方式出现日期格式

在 CodeIgniter 中比较日期

CONCAT sql 查询需要正确的格式。 Codeigniter 活动记录