PHPはExcelをArrayにする
1650 ワード
function format_excel2array($filePath='',$sheet=0){
require PC_PATH.'libs/classes/PHPExcel.php';
require PC_PATH.'libs/classes/PHPExcel/IOFactory.php';
require PC_PATH.'libs/classes/PHPExcel/Reader/Excel2007.php';
require PC_PATH.'libs/classes/PHPExcel/Reader/Excel5.php';
if(empty($filePath) or !file_exists($filePath)){die('file not exists');}
$PHPReader = new PHPExcel_Reader_Excel2007(); // reader
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($sheet); //** excel */
$allColumn = $currentSheet->getHighestColumn(); //** */
$allRow = $currentSheet->getHighestRow(); //** */
$data = array();
for($rowIndex=1;$rowIndex<=$allRow;$rowIndex++){ // 。 1 , A
for($colIndex='A';$colIndex<=$allColumn;$colIndex++){
$addr = $colIndex.$rowIndex;
$cell = $currentSheet->getCell($addr)->getValue();
if($cell instanceof PHPExcel_RichText){ //
$cell = $cell->__toString();
}
$data[$rowIndex][$colIndex] = $cell;
}
}
return $data;
}