IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    CakePHP 使用插件导出 CSV 文件

    forecho (caizhenghai@gmail.com)发表于 2014-09-05 21:42:01
    love 0

    插件地址:https://github.com/josegonzalez/cakephp-csvview

    用法就不说了,上面写的很详细了,补充两点吧。

    1. 是数字显示的问题

    有时候数字很大,导出的文件打开,数字变成科学计数法显示了,这显然不是我们想要的,手动在每个值后面添加一个制表符「\t」就解决这个问题了。代码如下:

    1
    2
    3
    4
    5
    
    foreach ($data as $key => $value) {
        $item[$key]['username'] = $value['username']. "\t";
        $item[$key]['mobile']   = $value['mobile'] . "\t";
        $item[$key]['created']  = $value['created'] . "\t";
    }
    

    2. 导出文件 office 中文乱码

    Plugin/CsvView/View/CsvView.php 文件的 _renderRow 函数,大概在 251 行之后添加如下代码解决中文乱码:

    1
    2
    3
    4
    5
    
    if ($row) {
        foreach ($rowas$key => $value) {
            $row[$key] = iconv('utf-8','gb2312',$value);
        }
    }
    


沪ICP备19023445号-2号
友情链接