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 相关文章推荐
Smarty结合Ajax实现无刷新留言本实例
Jan 02 PHP
php下删除一篇文章生成的多个静态页面
Aug 08 PHP
PHP数组交集的优化代码分析
Mar 06 PHP
让PHP COOKIE立即生效,不用刷新就可以使用
Mar 09 PHP
PHP中的cookie不用刷新就生效的方法
Feb 04 PHP
PHP单例模式详解及实例代码
Dec 21 PHP
基于thinkPHP类的插入数据库操作功能示例
Jan 06 PHP
php实现XML和数组的相互转化功能示例
Feb 08 PHP
PHP最常用的正则表达式
Feb 13 PHP
修改yii2.0用户登录使用的user表为其它的表实现方法(推荐)
Aug 01 PHP
PHP实现的字符串匹配算法示例【sunday算法】
Dec 19 PHP
php查看一个变量的占用内存的实例代码
Mar 29 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 全文搜索和替换的实现代码
2008/07/29 PHP
php站内搜索并高亮显示关键字的实现代码
2011/12/29 PHP
杨氏矩阵查找的JS代码
2013/03/21 Javascript
Jquery实现侧边栏跟随滚动条固定(兼容IE6)
2014/04/02 Javascript
JavaScript设计模式之外观模式实例
2014/10/10 Javascript
JS简单操作select和dropdownlist实例
2014/11/26 Javascript
Javascript中的匿名函数与封装介绍
2015/03/15 Javascript
通过Jquery.cookie.js实现展示浏览网页的历史记录超管用
2015/10/23 Javascript
AngularJS 工作原理详解
2016/08/18 Javascript
vue.js入门教程之基础语法小结
2016/09/01 Javascript
jQuery动态改变多行文本框高度的方法
2016/09/07 Javascript
Jil,高效的json序列化和反序列化库
2017/02/15 Javascript
微信小程序 slider的简单实例
2017/04/19 Javascript
vue一步步实现alert功能
2017/07/05 Javascript
通过源码分析Vue的双向数据绑定详解
2017/09/24 Javascript
Vue请求java服务端并返回数据代码实例
2019/11/28 Javascript
[49:18]2018DOTA2亚洲邀请赛 3.31 小组赛 A组 OG vs TNC
2018/04/01 DOTA
Python简单计算文件夹大小的方法
2015/07/14 Python
python使用邻接矩阵构造图代码示例
2017/11/10 Python
理论讲解python多进程并发编程
2018/02/09 Python
PyCharm 设置SciView工具窗口的方法
2019/01/15 Python
python导入pandas具体步骤方法
2019/06/23 Python
django如何自己创建一个中间件
2019/07/24 Python
python读取多层嵌套文件夹中的文件实例
2020/02/27 Python
解决pip install psycopg2出错问题
2020/07/09 Python
广告业务员岗位职责
2014/02/06 职场文书
《春天来了》教学反思
2014/04/07 职场文书
学习方法演讲稿
2014/05/10 职场文书
高中教师考核方案
2014/05/18 职场文书
推普周国旗下讲话稿
2014/09/21 职场文书
幼儿园感恩节活动方案
2014/10/06 职场文书
班主任高考寄语
2015/02/26 职场文书
法院答辩状格式
2015/05/22 职场文书
2016新年感言
2015/08/03 职场文书
golang goroutine顺序输出方式
2021/04/29 Golang
海贼王十大潜力果实,路飞仅排第十,第一可毁世界(震震果实)
2022/03/18 日漫