php导出中文内容excel文件类实例
2015-07-06 11:23
691 查看
本文实例讲述了php导出中文内容excel文件类。分享给大家供大家参考。具体如下:
<?php class toExcel{ public $link = null; function __construct(){ } /*************************************************************************** * $mapping:数组格式头信息$map=array('No','Name','Email','Age'); * $datalist:数据库查出来的结果集 * $fileName:Excel文件名称 * return:Excel格式文件 **************************************************************************/ public function toExcel($mapping,$datalist,$fileName) { header("Content-type:application/vnd.ms-excel"); header("Content-Disposition:filename=".iconv('utf-8', 'gb2312', $fileName).".xls"); echo'<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns="http://www.w3.org/TR/REC-html40"> <head> <meta http-equiv="expires" content="Mon, 06 Jan 1999 00:00:01 GMT"> <meta http-equiv=Content-Type content="text/html; charset=UTF-8"> <!--[if gte mso 9]><xml> <x:ExcelWorkbook> <x:ExcelWorksheets> <x:ExcelWorksheet> <x:Name></x:Name> <x:WorksheetOptions> <x:DisplayGridlines/> </x:WorksheetOptions> </x:ExcelWorksheet> </x:ExcelWorksheets> </x:ExcelWorkbook> </xml><![endif]--> </head> <body link=blue vlink=purple leftmargin=0 topmargin=0>'; echo'<table border="0" cellspacing="0" cellpadding="0">'; echo'<tr>'; if(is_array($mapping)) { foreach($mapping as $key=>$val) echo"<td style='background-color:#09F;font-weight:bold;'>".$val."</td>"; } echo'</tr>'; foreach($datalist as $k=>$v){ echo'<tr>'; foreach($v as $key=>$val){ if(is_numeric($val) && strlen($val)>=14){ echo"<td style='vnd.ms-excel.numberformat:@'>".$val."</td>"; //大于14位的数字转换成字符串输出(如身份证) }else{ echo"<td>".$val."</td>"; } } echo'</tr>'; } echo'</table>'; echo'</body>'; echo'</html>'; } } $map=array('No','Name','Email'); $datal=array(array(1, '管理员', 'admin@163.com'), array(2, 'member', 'member@163.com'));; $csv=new toExcel; $csv->toExcel($map,$datal,"dataexport"); ?>
方法二
<?php header("Content-Type: application/vnd.ms-execl"); header("Content-Disposition: attachment; filename=myExcel.xls"); header("Pragma: no-cache"); header("Expires: 0"); /*first line*/ $data1= "中文测试"; $data1=mb_convert_encoding($data1,"GB2312","UTF-8"); echo $data1."\t"; echo "world"."\t"; echo "\t\n"; /*start of second line*/ echo "this is second line"."\t"; echo "Hi,pretty girl"."\t"; echo "\t\n"; ?>
希望本文所述对大家的php程序设计有所帮助。
您可能感兴趣的文章:
相关文章推荐
- 一个关于if else容易迷惑的问题
- PHP5.2.*防止Hash冲突拒绝服务攻击的Patch
- 深入理解PHP之匿名函数
- 使用Python生成Excel格式的图片
- JSP/PHP基于Ajax的分页功能实现
- 关于PHP通过PDO用中文条件查询MySQL的问题。
- 什么是设计模式
- Excel 曝出 Power Query 安全漏洞,1.2 亿用户易受远程 DDE 攻击
- PHP数据库长连接mysql_pconnect的细节
- Php Installing An Expansion
- excel vba 限制工作表的滚动区域代码
- excel vba 高亮显示当前行代码
- C#读取中文文件出现乱码的解决方法
- PHP+Apache在Windows 9x下的安装和配置
- IIS 6 的 PHP 最佳配置方法
- 安装Apache和PHP的一些补充
- Linux Apache+MySQL+PHP
- 建立Apache+PHP+MySQL数据库驱动的动态网站
- PHP 5.3.0 安装分析心得