首页 >后端开发 >php教程 >php生成(导出)csv文件的函数示例

php生成(导出)csv文件的函数示例

WBOY
WBOY原创
2016-07-25 08:55:071074浏览
  1. $list = array (
  2. 'aaa,bbb,ccc,dddd',
  3. '123,456,789',
  4. '"aaa","bbb"'
  5. );
  6. $fp = fopen('file.csv', 'w');
  7. foreach ($list as $line) {
  8. fputcsv($fp, split(',', $line));
  9. fclose($fp);
  10. }
复制代码

不过低版本的php中没有这样的内置函数,可以自己实现一个自定义函数:

  1. function fputcsv4($fh, $arr){
  2. $csv = "";
  3. while (list($key, $val) = each($arr))
  4. {
  5. $val = str_replace('"', '""', $val);
  6. $csv .= '"'.$val.'",';
  7. }
  8. $csv = substr($csv, 0, -1);
  9. $csv .= "\n";
  10. if (!@fwrite($fh, $csv))
  11. return FALSE;
  12. }
复制代码

如此就可以将数据库读出来的数组转化写入csv文件。

代码:

  1. $users = $this->mdMemUsers->findBysql($sql);
  2. $i = 0;
  3. foreach($users as $vo){
  4. $content[$i] = implode(',',$vo);
  5. $i++;
  6. }
  7. $fp = fopen('users.csv', 'w');
  8. foreach ($content as $line) {
  9. fputcsv4($fp, split(',', $line));
  10. }
复制代码


声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn