php使用指定编码导出mysql数据到csv文件的方法


Posted in PHP onMarch 31, 2015

本文实例讲述了php使用指定编码导出mysql数据到csv文件的方法。分享给大家供大家参考。具体实现方法如下:

<?php
/*
 * PHP code to export MySQL data to CSV
 * 
 * Sends the result of a MySQL query as a CSV file for download
 * Easy to convert to UTF-8.
 */

 /*
 * establish database connection
 */

$conn = mysql_connect('localhost', 'login', 'pass') or die(mysql_error());
mysql_select_db('database_name', $conn) or die(mysql_error($conn));
mysql_query("SET NAMES CP1252");
/* 
 * execute sql query   
 */
$query = sprintf('SELECT field1,field2 FROM table_name');
$result = mysql_query($query, $conn) or die(mysql_error($conn));
/* 
 * send response headers to the browser
 * following headers instruct the browser to treat the data as a csv file called export.csv
 */
header('Content-Type: text/csv; charset=cp1252');
header('Content-Disposition: attachment;filename=output.csv');
/* 
 * output header row (if atleast one row exists) 
 */ 
  
$row = mysql_fetch_assoc($result); 
if ($row) {
  echocsv(array_keys($row));
}

/*
 * output data rows (if atleast one row exists)
 */
while ($row) {
  echocsv($row);
  $row = mysql_fetch_assoc($result);
}

/*
 * echo the input array as csv data maintaining consistency with most CSV implementations
 * - uses double-quotes as enclosure when necessary
 * - uses double double-quotes to escape double-quotes
 * - uses CRLF as a line separator
 */

function echocsv($fields)
{
  $separator = '';
  foreach ($fields as $field) {
    if (preg_match('/\\r|\\n|,|"/', $field)) {
 $field = '"' . str_replace('"', '""', $field) . '"';
    }
    echo $separator . $field;
    $separator = ',';
  }
  echo "\r\n";
}
?>

希望本文所述对大家的php程序设计有所帮助。

PHP 相关文章推荐
如何在symfony中导出为CSV文件中的数据
Oct 06 PHP
PHP性能优化工具篇Benchmark类调试执行时间
Dec 06 PHP
PHP+MySQL投票系统的设计和实现分享
Sep 23 PHP
WordPress自定义时间显示格式
Mar 27 PHP
PHP检测用户是否关闭浏览器的方法
Feb 14 PHP
PHP 中提示undefined index如何解决(多种方法)
Mar 16 PHP
简单概括PHP的字符串中单引号与双引号的区别
May 07 PHP
php curl中gzip的压缩性能测试实例分析
Nov 08 PHP
php生成0~1随机小数的方法(必看)
Apr 05 PHP
php将html转为图片的实现方法
May 19 PHP
php出租房数据管理及搜索页面
May 23 PHP
php打开本地exe程序,js打开本地exe应用程序,并传递相关参数方法
Feb 06 PHP
php输出全球各个时区列表的方法
Mar 31 #PHP
php限制ip地址范围的方法
Mar 31 #PHP
php使用数组填充下拉列表框的方法
Mar 31 #PHP
php实现的简单日志写入函数
Mar 31 #PHP
PHP获取photoshop写入图片文字信息的方法
Mar 31 #PHP
php简单实现多字节字符串翻转的方法
Mar 31 #PHP
PHP使用内置dir类实现目录遍历删除
Mar 31 #PHP
You might like
PHP集成FCK的函数代码
2008/09/27 PHP
Codeigniter通过SimpleXML将xml转换成对象的方法
2015/03/19 PHP
php如何获取文件的扩展名
2015/10/28 PHP
PHP实现websocket通信的方法示例
2018/08/28 PHP
父窗口获取弹出子窗口文本框的值
2006/06/27 Javascript
分享两个手机访问pc网站自动跳转手机端网站代码
2020/12/24 Javascript
ECMAScript 5严格模式(Strict Mode)介绍
2015/03/02 Javascript
javascript实现ecshop搜索框键盘上下键切换控制
2015/03/18 Javascript
js实现Select列表内容自动滚动效果代码
2015/08/20 Javascript
jQuery满屏焦点图左右滚动特效代码分享
2015/09/07 Javascript
跟我学习javascript的call(),apply(),bind()与回调
2015/11/16 Javascript
jQuery.Validate表单验证插件的使用示例详解
2017/01/04 Javascript
jQuery niceScroll滚动条错位问题的解决方法
2018/02/03 jQuery
Vue.js 踩坑记之双向绑定
2018/05/03 Javascript
微信小程序scroll-view隐藏滚动条的方法详解
2020/03/25 Javascript
python判断windows隐藏文件的方法
2014/03/21 Python
使用Python的Twisted框架实现一个简单的服务器
2015/04/16 Python
浅谈python中scipy.misc.logsumexp函数的运用场景
2016/06/23 Python
Python中标准库OS的常用方法总结大全
2017/07/19 Python
Tensorflow使用tfrecord输入数据格式
2018/06/19 Python
python cs架构实现简单文件传输
2020/03/20 Python
浅析Python函数式编程
2018/10/06 Python
pip 安装库比较慢的解决方法(国内镜像)
2019/10/06 Python
Mac中PyCharm配置Anaconda环境的方法
2020/03/04 Python
Python多线程多进程实例对比解析
2020/03/12 Python
使用opencv中匹配点对的坐标提取方式
2020/06/04 Python
Numpy中ndim、shape、dtype、astype的用法详解
2020/06/14 Python
Python3爬虫关于识别点触点选验证码的实例讲解
2020/07/30 Python
电子商务专员岗位职责
2013/12/11 职场文书
化妆师职业生涯规划书
2014/02/16 职场文书
捐款感谢信
2015/01/20 职场文书
反腐倡廉主题教育活动总结
2015/05/07 职场文书
红色革命电影观后感
2015/06/18 职场文书
民政局2016年“六一”儿童节慰问活动总结
2016/04/06 职场文书
Django与数据库交互的实现
2021/06/03 Python
基于Python实现西西成语接龙小助手
2022/08/05 Golang