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语法(3)
Oct 09 PHP
php 删除cookie和浏览器重定向
Mar 16 PHP
去掉destoon资讯内容页keywords关键字自带的文章标题的方法
Aug 21 PHP
PHP中echo和print的区别
Aug 28 PHP
ThinkPHP处理Ajax返回的方法
Nov 22 PHP
PHP中基本HTTP认证技巧分析
Mar 16 PHP
深入理解PHP中的Streams工具
Jul 03 PHP
js代码实现微博导航栏
Jul 30 PHP
利用PHP绘图函数实现简单验证码功能的方法
Oct 18 PHP
PHP应用跨时区功能的实现方法
Mar 21 PHP
php和nginx交互实例讲解
Sep 24 PHP
php中配置文件保存修改操作 如config.php文件的读取修改等操作
May 12 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数组实例详解
2016/06/26 PHP
javascript 清除输入框中的数据
2009/04/13 Javascript
jquery 锁定弹出层实现代码
2010/02/23 Javascript
javascript模拟地球旋转效果代码实例
2013/12/02 Javascript
express的中间件bodyParser详解
2014/12/04 Javascript
AngularJS + Node.js + MongoDB开发的基于高德地图位置的通讯录
2015/01/02 Javascript
jQuery页面刷新(局部、全部)问题分析
2016/01/09 Javascript
仅30行代码实现Javascript中的MVC
2016/02/15 Javascript
Js获取图片原始宽高的实现代码
2016/05/17 Javascript
基于jQuery.validate及Bootstrap的tooltip开发气泡样式的表单校验组件思路详解
2016/07/18 Javascript
JavaScript使用readAsDataURL读取图像文件
2017/05/10 Javascript
强大的 Angular 表单验证功能详细介绍
2017/05/23 Javascript
angular框架实现全选与单选chekbox的自定义
2017/07/06 Javascript
解决VUE项目使用Element-ui 下拉组件的验证失效问题
2020/11/07 Javascript
python 与GO中操作slice,list的方式实例代码
2017/03/20 Python
Python的装饰器使用详解
2017/06/26 Python
wxPython的安装图文教程(Windows)
2017/12/28 Python
Python字符串格式化%s%d%f详解
2018/02/02 Python
python简单实现矩阵的乘,加,转置和逆运算示例
2019/07/10 Python
携程英文网站:Trip.com
2017/02/07 全球购物
印度手工编织服装和家居用品商店:Fabindi
2019/10/07 全球购物
欧姆龙医疗保健与医疗产品:Omron Healthcare
2020/02/10 全球购物
电大自我鉴定
2013/10/27 职场文书
《藤野先生》教学反思
2014/02/19 职场文书
学习十八大坚定理想信念心得体会
2014/03/11 职场文书
房地产广告策划方案
2014/05/15 职场文书
重点工程汇报材料
2014/08/27 职场文书
医药销售自我评价200字
2014/09/11 职场文书
医德医风自我评价
2014/09/19 职场文书
2015年求职自荐信范文
2015/03/04 职场文书
2015年世界环境日演讲稿
2015/03/18 职场文书
读书笔记怎么写
2015/07/01 职场文书
领导干部学习三严三实心得体会
2016/01/05 职场文书
CSS3 制作的悬停缩放特效
2021/04/13 HTML / CSS
详解TS数字分隔符和更严格的类属性检查
2021/05/06 Javascript
MySQL中优化SQL语句的方法(show status、explain分析服务器状态信息)
2022/04/09 MySQL