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 相关文章推荐
PHP输出控制功能在简繁体转换中的应用
Oct 09 PHP
php采集时被封ip的解决方法
Aug 29 PHP
ThinkPHP关联模型操作实例分析
Sep 23 PHP
PHP中is_file不能替代file_exists的理由
Mar 04 PHP
PHP生成自适应大小的缩略图类及使用方法分享
May 06 PHP
PHP常用数组函数介绍
Jul 28 PHP
PHP通过API获取手机号码归属地
May 28 PHP
详解PHP中的mb_detect_encoding函数使用方法
Aug 18 PHP
PHP使用PDO抽象层获取查询结果的方法示例
May 10 PHP
thinkPHP框架乐观锁和悲观锁实例分析
Oct 30 PHP
Thinkphp 框架扩展之数据库驱动常用方法小结
Apr 23 PHP
laravel ajax curd 搜索登录判断功能的实现
Apr 17 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 数字左侧自动补0
2008/03/31 PHP
PHP取得一个类的属性和方法的实现代码
2011/05/22 PHP
PHP实现图片旋转效果实例代码
2014/10/01 PHP
PHP+MySQL统计该库中每个表的记录数并按递减顺序排列的方法
2016/02/15 PHP
关于ThinkPhp 框架表单验证及ajax验证问题
2017/07/19 PHP
php实现等比例压缩图片
2018/07/26 PHP
ThinkPHP3.2.3框架邮件发送功能图文实例详解
2019/04/23 PHP
js写一个弹出层并锁屏效果实现代码
2012/12/07 Javascript
checkbox全选所涉及到的知识点介绍
2013/12/31 Javascript
js计算任意值之间随机数的方法
2015/01/16 Javascript
js实现透明度渐变效果的方法
2015/04/10 Javascript
jQuery解决input超多的表单提交
2015/08/10 Javascript
10个很棒的jQuery代码片段
2015/09/24 Javascript
jquery form表单获取内容以及绑定数据
2016/02/24 Javascript
js小数计算小数点后显示多位小数的实现方法
2016/05/30 Javascript
JavaScript reduce和reduceRight详解
2016/10/24 Javascript
基于Angular.js实现的触摸滑动动画实例代码
2017/02/19 Javascript
详解axios在vue中的简单配置与使用
2017/05/10 Javascript
Angular学习笔记之集成三方UI框架、控件的示例
2018/03/23 Javascript
探索node之事件循环的实现
2020/10/30 Javascript
带你使用webpack快速构建web项目的方法
2020/11/12 Javascript
Python是编译运行的验证方法
2015/01/30 Python
Python排序搜索基本算法之希尔排序实例分析
2017/12/09 Python
django2+uwsgi+nginx上线部署到服务器Ubuntu16.04
2018/06/26 Python
python K近邻算法的kd树实现
2018/09/06 Python
关于Python 常用获取元素 Driver 总结
2019/11/24 Python
Python flask框架端口失效解决方案
2020/06/04 Python
Keras—embedding嵌入层的用法详解
2020/06/10 Python
什么是View State?
2013/01/27 面试题
设计部经理的岗位职责
2013/11/16 职场文书
大学生村官事迹材料
2014/01/21 职场文书
教育科研先进个人材料
2014/01/26 职场文书
企业财务总监岗位职责
2015/04/03 职场文书
青年岗位能手事迹材料(2016推荐版)
2016/03/01 职场文书
使用pandas或numpy处理数据中的空值(np.isnan()/pd.isnull())
2021/05/14 Python
JS如何使用剪贴板操作Clipboard API
2021/05/17 Javascript