当我加载任何文件xls,但总是给出文本。我做了所有这些:DOM元素:HTML DOM元素:BODY DOM元素:P段开始:段落结束:FLUSH CELL:A1 =>二
$ aSheet = $ objPHPExcel-> getActiveSheet ();
外部文件没有数据怎么办?
我的代码:
function getXLS($xls) {
include_once '/server_name/public_html/PHPExcel/Classes/PHPExcel/IOFactory.php';
$objPHPExcel = PHPExcel_IOFactory::load($xls);
$objPHPExcel->setActiveSheetIndex(0);
$aSheet = $objPHPExcel->getActiveSheet();
$array = array();
foreach($aSheet->getRowIterator() as $row) {
$cellIterator = $row->getCellIterator();
$item = array();
foreach($cellIterator as $cell) {
array_push($item, $cell->getCalculatedValue());
}
return $array;
}
$excel_file = $_FILES['excel_file'];
if( $excel_file )
$excel_file = $_FILES['excel_file']['tmp_name'];
if($_FILES['excel_file']['tmp_name']) {
$xlsData = getXLS($excel_file);
}
}
答案 0 :(得分:1)
这些错误消息是用于读取HTML文件的旧调试代码。 PHPExcel已将您正在加载的文件标识为HTML而不是真正的.xls文件,并且正在使用HTML Reader。不幸的是,我在代码中留下了一些应该在发布之前删除的诊断信息。
要解析,编辑HTML Reader文件,并注释掉任何回传任何内容的行
然而,仔细观察它实际上看起来好像有一个HTML标记缠绕在一个真正的Excel文件的字节流数据(在文本编辑器中打开文件,看看我的意思)。但是这个文件正在生成,它被这个文件破坏了,使它无法读取。您需要修复创建此文件的代码。