PHPExcel读取Excel文件的实现代码

 更新时间:2011年12月06日 01:21:31   作者:  
用PHPExcel读取Excel 2007 或者Excel2003文件,需要的朋友,可以参考下。
涉及知识点:

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";
?>

相关文章

  • ThinkPHP5对接IOS苹果支付代码

    ThinkPHP5对接IOS苹果支付代码

    前端在调起苹果支付前,先请求到服务端,服务端先生成一条充值记录,但是状态为:未支付;然后把这个订单id发给前端,前端在支付完成的时候,会收到苹果的支付凭证,将此凭证和订单id回传给服务端,订单id的作用是用来确定是哪一笔,支付凭证是拿来校验是否支付成功
    2023-08-08
  • 在win系统安装配置 Memcached for PHP 5.3 图文教程

    在win系统安装配置 Memcached for PHP 5.3 图文教程

    这篇文章主要介绍了在win系统安装配置 Memcached for PHP 5.3 图文教程,需要的朋友可以参考下
    2015-03-03
  • php函数mkdir实现递归创建层级目录

    php函数mkdir实现递归创建层级目录

    当我们想在自己的站点中添加多级目录时,可以运用php函数mkdir()来实现这个功能。具有一定的参考价值,感兴趣的小伙伴们可以参考一下。
    2016-10-10
  • CI操作cookie的方法分析(基于helper类库)

    CI操作cookie的方法分析(基于helper类库)

    这篇文章主要介绍了CI操作cookie的方法,结合实例形式分析了CI使用helper类库的cookie类库实现操作cookie的相关技巧,需要的朋友可以参考下
    2016-03-03
  • ajax php传递和接收变量实现思路及代码

    ajax php传递和接收变量实现思路及代码

    在实际应用中会遇到这种情况:ajax与php之间传递和接收变量,为了实现这一功能应用,很多新手朋友们,只能望洋兴叹啊,于是本人搜集整理一些实用技巧,晒出来和大家分享,希望可以帮助你们
    2012-12-12
  • 用 Composer构建自己的 PHP 框架之构建路由

    用 Composer构建自己的 PHP 框架之构建路由

    本文是构建自己的php框架的第二篇,主要为大家来讲述如何构建路由,非常的详细,也很易懂,有需要的朋友可以参考下
    2014-10-10
  • php使用curl模拟浏览器表单上传文件或者图片的方法

    php使用curl模拟浏览器表单上传文件或者图片的方法

    这篇文章主要介绍了php使用curl模拟浏览器表单上传文件或者图片的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-11-11
  • phpstudy2018升级MySQL5.5为5.7教程(图文)

    phpstudy2018升级MySQL5.5为5.7教程(图文)

    这篇文章主要介绍了phpstudy2018升级MySQL5.5为5.7教程(图文),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-10-10
  • Laravel框架实现利用中间件进行操作日志记录功能

    Laravel框架实现利用中间件进行操作日志记录功能

    这篇文章主要介绍了Laravel框架实现利用中间件进行操作日志记录功能,结合实例形式分析了Laravel框架中间件的创建、引入以及使用中间件进行操作日志记录功能的相关实现技巧,需要的朋友可以参考下
    2018-06-06
  • php求正负数数组中连续元素最大值示例

    php求正负数数组中连续元素最大值示例

    问题是给出数组,该数组由正负数字组成,找出该数组中连续元素组成的子数组的最大值。下面是PHP实现的示例,需要的朋友可以参考下
    2014-04-04

最新评论