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 相关文章推荐
简单易用的计数器(数据库)
Oct 09 PHP
实例(Smarty+FCKeditor新闻系统)
Jan 02 PHP
require(),include(),require_once()和include_once()的异同
Jan 02 PHP
php中使用ExcelFileParser处理excel获得数据(可作批量导入到数据库使用)
Aug 21 PHP
PHP Cookie的使用教程详解
Jun 03 PHP
利用“多说”制作留言板、评论系统
Jul 14 PHP
PHP实现的memcache环形队列类实例
Jul 28 PHP
php实现的农历算法实例
Aug 11 PHP
yii权限控制的方法(三种方法)
Dec 28 PHP
YII Framework框架教程之缓存用法详解
Mar 14 PHP
php网页版聊天软件实现代码
Aug 12 PHP
PHP rmdir()函数的用法总结
Jul 02 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
phplock(php进程锁) v1.0 beta1
2009/11/24 PHP
php使用glob函数快速查询指定目录文件的方法
2014/11/15 PHP
php检查页面是否被百度收录
2015/10/28 PHP
3种php生成唯一id的方法
2015/11/23 PHP
PHP实现的简单操作SQLite数据库类与用法示例
2017/06/19 PHP
分析php://output和php://stdout的区别
2018/05/06 PHP
php实现微信小程序授权登录功能(实现流程)
2019/11/13 PHP
javascript 数组排序函数
2009/08/20 Javascript
基于jQuery的ajax功能实现web service的json转化
2009/08/29 Javascript
关于jQuery中的end()使用方法
2011/07/10 Javascript
点弹代码 点击页面任何位置都可以弹出页面效果代码
2012/09/17 Javascript
jQuery实现数字加减效果汇总
2014/12/16 Javascript
JS中的eval 为什么加括号
2016/04/13 Javascript
vue2.0 中#$emit,$on的使用详解
2017/06/07 Javascript
JavaScrip数组删除特定元素的几种方法总结
2017/09/06 Javascript
jquery ajax异步提交表单数据的方法
2017/10/27 jQuery
three.js实现3D视野缩放效果
2017/11/16 Javascript
JS使用new操作符创建对象的方法分析
2019/05/30 Javascript
详解Webpack4多页应用打包方案
2020/07/16 Javascript
Python中表示字符串的三种方法
2017/09/06 Python
python使用knn实现特征向量分类
2018/12/26 Python
在python中将list分段并保存为array类型的方法
2019/07/15 Python
python如何保证输入键入数字的方法
2019/08/23 Python
python绘制无向图度分布曲线示例
2019/11/22 Python
Python类class参数self原理解析
2020/11/19 Python
详解canvas绘制网络字体几种方法
2019/08/27 HTML / CSS
Jacadi Paris英国官网:法国童装品牌
2019/08/09 全球购物
建筑装饰学院室内设计专业个人自我评价
2013/12/07 职场文书
自我评价是什么
2014/01/04 职场文书
大学生工作求职信
2014/06/23 职场文书
免职证明样本
2014/10/23 职场文书
婚宴领导致辞
2015/07/28 职场文书
MySQL时间设置注意事项的深入总结
2021/05/06 MySQL
MySQL 5.7常见数据类型
2021/07/15 MySQL
python 使用tkinter与messagebox写界面和弹窗
2022/03/20 Python
Java实现简单小画板
2022/06/10 Java/Android