PHPExcel读取Excel文件的实现代码


Posted in PHP onDecember 06, 2011

涉及知识点:

php对excel文件进行循环读取

php对字符进行ascii编码转化,将字符转为十进制数

php对excel日期格式读取,并进行显示转化

php对汉字乱码进行编码转化

<?php require_once 'PHPExcel.php'; 
/**对excel里的日期进行格式转化*/ 
function GetData($val){ 
$jd = GregorianToJD(1, 1, 1970); 
$gregorian = JDToGregorian($jd+intval($val)-25569); 
return $gregorian;/**显示格式为 “月/日/年” */ 
} 
$filePath = 'test.xlsx'; 
$PHPExcel = new PHPExcel(); 
/**默认用excel2007读取excel,若格式不对,则用之前的版本进行读取*/ 
$PHPReader = new PHPExcel_Reader_Excel2007(); 
if(!$PHPReader->canRead($filePath)){ 
$PHPReader = new PHPExcel_Reader_Excel5(); 
if(!$PHPReader->canRead($filePath)){ 
echo 'no Excel'; 
return ; 
} 
} 
$PHPExcel = $PHPReader->load($filePath); 
/**读取excel文件中的第一个工作表*/ 
$currentSheet = $PHPExcel->getSheet(0); 
/**取得最大的列号*/ 
$allColumn = $currentSheet->getHighestColumn(); 
/**取得一共有多少行*/ 
$allRow = $currentSheet->getHighestRow(); 
/**从第二行开始输出,因为excel表中第一行为列名*/ 
for($currentRow = 2;$currentRow <= $allRow;$currentRow++){ 
/**从第A列开始输出*/ 
for($currentColumn= 'A';$currentColumn<= $allColumn; $currentColumn++){ 
$val = $currentSheet->getCellByColumnAndRow(ord($currentColumn) - 65,$currentRow)->getValue();/**ord()将字符转为十进制数*/ 
if($currentColumn == 'A') 
{ 
echo GetData($val)."\t"; 
}else{ 
//echo $val; 
/**如果输出汉字有乱码,则需将输出内容用iconv函数进行编码转换,如下将gb2312编码转为utf-8编码输出*/ 
echo iconv('utf-8','gb2312', $val)."\t"; 
} 
} 
echo "</br>"; 
} 
echo "\n"; 
?>
PHP 相关文章推荐
php 无限级分类学习参考之对ecshop无限级分类的解析 带详细注释
Mar 23 PHP
php替换超长文本中的特殊字符的函数代码
May 22 PHP
php遍历所有文件及文件夹的方法深入解析
Jun 08 PHP
php使用ICQ网关发送手机短信
Oct 30 PHP
php中执行系统命令的方法
Mar 21 PHP
php 如何禁用eval() 函数实例详解
Dec 01 PHP
PHP编程快速实现数组去重的方法详解
Jul 22 PHP
PHP实现将多个文件压缩成zip格式并下载到本地的方法示例
May 23 PHP
PHP使用DOM对XML解析处理操作示例
Jul 04 PHP
PHP递归统计系统中代码行数
Sep 19 PHP
tp5框架使用cookie加密算法实现登录功能示例
Feb 10 PHP
PHP实现chrome表单请求数据转换为接口使用的json数据
Mar 04 PHP
PHP spl_autoload_register实现自动加载研究
Dec 06 #PHP
采用PHP函数memory_get_usage获取PHP内存清耗量的方法
Dec 06 #PHP
PHP中文件缓存转内存缓存的方法
Dec 06 #PHP
php urlencode()与urldecode()函数字符编码原理详解
Dec 06 #PHP
PHP中实现中文字符进制转换原理分析
Dec 06 #PHP
PHP性能优化工具篇Benchmark类调试执行时间
Dec 06 #PHP
PHP性能优化准备篇图解PEAR安装
Dec 05 #PHP
You might like
重置版宣传动画
2020/04/09 魔兽争霸
分享一下贝贝成长进度的php代码
2012/09/14 PHP
thinkPHP实现瀑布流的方法
2014/11/29 PHP
php获取错误信息的方法
2015/07/17 PHP
php批量删除超链接的实现方法
2015/10/19 PHP
php在数据库抽象层简单使用PDO的方法
2015/11/03 PHP
php实现搜索类封装示例
2016/03/31 PHP
JAVASCRIPT  THIS详解 面向对象
2009/03/25 Javascript
jquery tab标签页的制作
2010/05/10 Javascript
URL地址中的#符号使用说明
2011/02/12 Javascript
js中如何把字符串转化为对象、数组示例代码
2013/07/17 Javascript
php读取sqlite数据库入门实例代码
2014/06/25 Javascript
javascript模拟实现ajax加载框实例
2014/10/15 Javascript
详解AngularJS中的filter过滤器用法
2016/01/04 Javascript
浅谈jQuery animate easing的具体使用方法(推荐)
2016/06/17 Javascript
Angular的模块化(代码分享)
2016/12/26 Javascript
js实现分页功能
2017/05/24 Javascript
javascript实现二叉树遍历的代码
2017/06/08 Javascript
JavaScript之创意时钟项目(实例讲解)
2017/10/23 Javascript
Vue源码解析之数组变异的实现
2018/12/04 Javascript
[03:01]2014DOTA2国际邀请赛 DC:我是核弹粉,为Burning和国土祝福
2014/07/13 DOTA
[43:57]Liquid vs Mineski 2019国际邀请赛小组赛 BO2 第二场 8.16
2019/08/19 DOTA
Python数据类型学习笔记
2016/01/13 Python
Flask-WTF表单的使用方法
2019/07/12 Python
Python3实现配置文件差异对比脚本
2019/11/18 Python
使用Keras预训练模型ResNet50进行图像分类方式
2020/05/23 Python
python主要用于哪些方向
2020/07/05 Python
运动会广播稿500字
2014/01/28 职场文书
水污染治理工程专业求职信
2014/06/14 职场文书
大三学生学年自我鉴定
2014/09/12 职场文书
2014五年级班主任工作总结
2014/12/05 职场文书
城管个人总结
2015/02/28 职场文书
银行工作心得体会范文
2016/01/23 职场文书
母婴行业实体、电商模式全面解析
2019/08/01 职场文书
MySQL数据库表约束讲解
2022/06/21 MySQL
MySQL实现用逗号进行拼接、以逗号进行分割
2022/12/24 MySQL