There are two main options, the first is PHPExcelReader and the other is PHPExcel.
PHPExcelReader is relatively lightweight and only supports reading Excel. It is actually a Reader. But unfortunately, it cannot support Excel 2007 format (.xlsx).
PHPExcel is relatively powerful and can output data in memory into Excel files. It can also perform various operations on Excel. The following mainly introduces how to use PHPExcel to read Excel 2007 format (.xlsx) files. . (Recommended learning: PHP video tutorial)
Download PHPExcel and save it to your own class file directory, and then use the following code to open the file in Excel 2007 (xlsx) format:
require_once '/libs/PHPExcel-1.8.0/Classes/PHPExcel.php'; //修改为自己的目录 echo '<p>TEST PHPExcel 1.8.0: read xlsx file</p>'; $objReader = PHPExcel_IOFactory::createReaderForFile($filename); $objPHPExcel = $objReader->load($filename); $objPHPExcel->setActiveSheetIndex(1); $date = $objPHPExcel->getActiveSheet()->getCell('A16')->getValue();
You can see the contents of the file by outputting the $date variable. PHPExcel uses the PHPExcel_IOFactory class to automatically match the uploaded file type. Of course, we can also specify the file type to be parsed ourselves. Then load the PHP file into the objPHPExcel object through the load method.
If the Excel file has multiple Sheets, you can set the currently active Sheet through setActiveSheetIndex.
It should be noted that for the date format in Excel, whether PHPExcel reads a date type, we need to use the following method to convert the date type.
echo date("Y-m-d H:i:s",PHPExcel_Shared_Date::ExcelToPHP($date));
The following code shows how to traverse and display the contents of Excel:
<table id="table_id"> <?php $objWorksheet = $objPHPExcel->getActiveSheet(); $i = 0; foreach($objWorksheet->getRowIterator() as $row){ ?> <tr> <?php $cellIterator = $row->getCellIterator(); $cellIterator->setIterateOnlyExistingCells(false); if( $i == 0 ){ echo '<thead>'; } foreach($cellIterator as $cell){ echo '<td>' . $cell->getValue() . '</td>'; } if( $i == 0 ){ echo '</thead>'; } $i++; ?> </tr> <?php } ?> </table>
The above is the detailed content of How to read xls file in php. For more information, please follow other related articles on the PHP Chinese website!