php导出excel格式数据问题
2.中文乱码的问题
excel从web页面上导出的原理。当我们把这些数据发送到客户端时,我们想让客户端程序(浏览器)以excel的格式读取它,所以把mime类型设为:application/vnd.ms-excel,当excel读取文件时会以每个cell的格式呈现数据,如果cell没有规定的格式,则excel会以默认的格式去呈现该cell的数据。这样就给我们提供了自定义数据格式的空间,当然我们必须使用excel支持的格式。下面就列出常用的一些格式:
2)日期:vnd.ms-excel.numberformat:yyyy/mm/dd
3)数字:vnd.ms-excel.numberformat:#,##0.00
4)货币:vnd.ms-excel.numberformat:¥#,##0.00
5)百分比:vnd.ms-excel.numberformat:#0.00%
这些格式你也可以自定义,比如年月你可以定义为:yy-mm等等。那么知道了这些格式,怎么去把这些格式添加到cell中呢?很简单,我们只需要把样式添加到对应的标签对(即闭合标签)即可。如<td></td>,给标签对<td></td>添加样式,如下:<td style="vnd.ms-excel.numberformat:@">410522198402161833</td>
同样,我们也可以给<div></div>添加样式,也可以给<tr></tr>,<table></table>添加样式;当我们在父标签对和子标签对都添加样式时,数据会以哪一个样式呈现呢?经过测试,会以离数据最近的样式呈现.
例如身份证列的<td>的样式:
echo"<tdstyle="vnd.ms-excel.numberformat:@">".$printable."</td>\n";
$filename=iconv("UTF-8","GB2312//IGNORE","会员名.xls");//date("Y-m-d-H-i-s").".xls";
header("Content-type:application/vnd.ms-excel");
Header("Accept-Ranges:bytes");
Header("Content-Disposition:attachment;filename=".$filename);//$filename导出的文件名
header("Pragma:no-cache");
header("Expires:0");
echo"<htmlxmlns:o="urn:schemas-microsoft-com:office:office"
xmlns:x="urn:schemas-microsoft-com:office:excel"
xmlns="http://www.w3.org/TR/REC-html40">
<head>
<metahttp-equiv="expires"content="Mon,06Jan199900:00:01GMT">
<metahttp-equiv=Content-Typecontent="text/html;charset=gb2312">
<!--[ifgtemso9]><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>";
echo"<table><tr>
<th>".iconv("UTF-8","GB2312//IGNORE","会员名")."</th>
<th>".iconv("UTF-8","GB2312//IGNORE","账号")."</th>
<th>".iconv("UTF-8","GB2312//IGNORE","联系人")."</th>
</tr>";
foreach($listas$v)
{
echo"<tr>";
echo"<td>".iconv("UTF-8","GB2312//IGNORE",$v["user_name"])."</td>";
echo"<tdstyle="vnd.ms-excel.numberformat:@">".$v["account_id"]."</td>";
echo"<td>".iconv("UTF-8","GB2312//IGNORE",$v["contact_name"])."</td>";
echo"</tr>";
}
echo"</table>";
相关文章
- vue下载excel以及自适应表格宽度(前后端)
- qq登录钓鱼php网页,PHP+JS模仿登录钓鱼「建议收藏」
- Excel函数之数字与文字分离
- 如何使用Excel将某几列有值的标题显示到新列中
- 再记公式弱爆了!用ChatGPT处理Excel问题,效率狂升
- PHP-解决导出excel文件中数字过大科学计数法问题
- MySQL查询结果导出至Excel:一步到位(mysql查询结果导出excel)
- 轻松实现Excel导入MySQL数据库(excel导入mysql数据库)
- MySQL导出数据到Excel的技巧(mysql导出xls)
- 初探Linux中的PHP文件之旅(linux创建php文件)
- PHP与Redis出色的结合(php连redis)
- PHP编译支持MySQL: 让你的网站更加强大和高效!(php编译支持mysql)
- 轻松导出:用SQL Server批量将数据导出到Excel(sqlserver导出excel)
- 高效实现消息处理: Redis队列与PHP的并发技巧(redis队列并发php)
- MySQL PHP长连接:持久化提升应用性能(mysql php长连接)
- PHP管理MSSQL的方法探索(Php管理mssql)
- PHP搭配MSSQL营造完美环境联动(php加mssql环境)
- Linux环境下轻松配置PHP:简单指南(linux下配置php)
- Oracle数据快速导出至Excel表格(oracle导出excel)
- PHP与MySQL:兼容性更好、更强大的灵活性(php与mysql 优点)
- 以原生PHP类库操作Redis数据库(原生php操作redis)
- 实现Redis数据批量导出至Excel(redis 转excel)
- php读取EXCEL文件phpexcelreader读取excel文件
- PHP导出EXCEL快速开发指南--PHPEXCEL的使用详解
- php内核解析:PHP中的哈希表
- php更新修改excel中的内容实例代码
- php不使用插件导出excel的简单方法