溜溜问答 > 日常办公 > Excel > 如何读取Excel文件 PHP?
高傑西
高傑西
邀请你来回答
53人阅读 2022-04-22

如何读取Excel文件 PHP?

我要回答
1个回答

主要有两个选择,第一个是PHPExcelReader,另外一个是PHPExcel。

PHPExcelReader比较轻量级,仅支持Excel的读取,实际上就是一个Reader。但是可惜的是不能够支持Excel 2007的格式(.xlsx)。

PHPExcel比较强大,能够将内存中的数据输出成Excel文件,同时还能够对Excel做各种操作,下面主要介绍下如何使用PHPExcel进行Excel 2007格式(.xlsx)文件的读取。

下载PHPExcel后保存到自己的类文件目录中,然后使用以下代码可以打开Excel 2007(xlsx)格式的文件:

require_once'/libs/PHPExcel-1.8.0/Classes/PHPExcel.php';//修改为自己的目录
echo'TESTPHPExcel1.8.0:readxlsxfile';
$objReader=PHPExcel_IOFactory::createReaderForFile($filename);
$objPHPExcel=$objReader->load($filename);
$objPHPExcel->setActiveSheetIndex(1);
$date=$objPHPExcel->getActiveSheet()->getCell('A16')->getValue();

输出$date变量就能够看到文件中的内容了。PHPExcel使用PHPExcel_IOFactory这个类来自动匹配所上传的文件类型,当然我们也可以自己制定要解析的文件类型。之后通过load方法,将PHP文件加载到objPHPExcel对象中。如果Excel文件有多个Sheet,可以通过setActiveSheetIndex来设置当前活动的Sheet。

需要注意的是,对于Excel中的日期格式,PHPExcel读出来的是不是日期类型,需要我们使用以下方法来进行日期类型转换。

echodate("Y-m-dH:i:s",PHPExcel_Shared_Date::ExcelToPHP($date));

下面的代码显示了如何遍历显示Excel的内容:


$objWorksheet=$objPHPExcel->getActiveSheet();
$i=0;
foreach($objWorksheet->getRowIterator()as$row){
?>

$cellIterator=$row->getCellIterator();
$cellIterator->setIterateOnlyExistingCells(false);
if($i==0){
echo'';
}
foreach($cellIteratoras$cell){
echo''.$cell->getValue().'';
}
if($i==0){
echo'';
}
$i++;
?>

}
?>

查看全部
2022-04-22
回复 采纳

相关问题

PHP怎样读取Excel表格内容?
共1条回答 >
太难受: 常用的用PHP读取EXCEL的方法有以下三种,各自有各自的优缺点。个人推荐用第三种方法,因为它可以跨平台使用。1.以.csv格式读取将.xls转换成.csv的文本格式,然后再用PHP分析这个文件,和PHP分析文本没有什么区别。优点:跨平台,效率比较高、可以读写。缺点:只能直接使用.csv的文件,如果经常接受.xls二进制文件的话需要手工转换,不能自动化。一个文件只有一个SHEET。PHP有自带的分析.csv函数:fgetcsvarrayfgetcsv(int$handle[,int$length....
回复
PHP 读取Excel
共1条回答 >
吃土少年嘎嘎: 有一个简便的方法将数据输出到网页的table标签里面然后改变header头为excelheader("Content-type:application/vnd.ms-excel");header("Content-Disposition:attachment;filename=文件名称.xls");正式点的前端使用bootstrapTable插件导出excel后端PHP使用PHPEXCEL插件
回复
PHP远程读取Excel文件,怎么读取?
共1条回答 >
萨洛凯设计部杨登民: PHPExcel通过PHPExcel_Shared_OLERead类的read方法读取文件但read方法里使用了is_readable函数来确认文件是否存在,而is_readable不能作用于url所以不可直接远程读取但若绕过is_readable函数的话,就是可以的publicfunctionread($sFileName){//Checkiffileexistsandisreadableif(!is_readable($sFileName)){thrownewException("Could....
(2) 回复
PHP中如何读取一个Excel表格文件?
共1条回答 >
陈昌良--醉时尚的天堂: 一般用csv格式的文件,和他excel一样,但操作他比操作excel要简单的多了。csv文件用记事本打开其实就是以","号分割的文本文件,特别方便php操作这有个csv文件的操作方法希望对你有帮助。php生成csv文件示例http://www.phperz.com/php/php-article/0113209520102095.html
(4) 回复
PHP怎么读取Excel 文件数据并输出?
共0条回答 >
发表成功!
感谢您的分享!
好的
25年12周年庆活动
25年12周年庆活动
官方微信群

(微信添加“妙妙”或“笑笑”,邀您进群)