zl程序教程

您现在的位置是:首页 >  工具

当前栏目

PHPExcel读取Excel文件的实现代码

Excel文件代码 实现 读取 PHPExcel
2023-06-13 09:14:31 时间
涉及知识点:

php对excel文件进行循环读取

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

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

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

复制代码代码如下:

<?php

require_once"PHPExcel.php";

/**对excel里的日期进行格式转化*/
functionGetData($val){
$jd=GregorianToJD(1,1,1970);
$gregorian=JDToGregorian($jd+intval($val)-25569);
return$gregorian;/**显示格式为“月/日/年”*/
}

$filePath="test.xlsx";

$PHPExcel=newPHPExcel();

/**默认用excel2007读取excel,若格式不对,则用之前的版本进行读取*/
$PHPReader=newPHPExcel_Reader_Excel2007();
if(!$PHPReader->canRead($filePath)){
$PHPReader=newPHPExcel_Reader_Excel5();
if(!$PHPReader->canRead($filePath)){
echo"noExcel";
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")
{
echoGetData($val)."\t";
}else{
//echo$val;
/**如果输出汉字有乱码,则需将输出内容用iconv函数进行编码转换,如下将gb2312编码转为utf-8编码输出*/
echoiconv("utf-8","gb2312",$val)."\t";
}
}
echo"</br>";
}
echo"\n";
?>