![](/img/trans.png)
[英]'PHPExcel_Reader_Exception' with message 'Could not open for reading! File does not exist.'
[英]PHPExcel_Reader_Exception recognised as an OLE file
请帮助我阅读附加的excel文件上传。 当我附加XLS格式时,我的PHPExcel阅读器无法正常工作。 你以为我在哪里想念?
的HTML
<form role="form" id="myForm" class="add_customer_form" enctype="multipart/form-data">
<label for="fileUpload">Upload File *</label>
<input type="file" id="files" name="file[]" class="form-control"
accept=".csv, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, text/plain, application/vnd.ms-excel"
multiple required>
</form>
AJAX
//用法:$(“#form”)。serializefiles();
(function($) {
$.fn.serializefiles = function() {
var obj = $(this);
/* ADD FILE TO PARAM AJAX */
var formData = new FormData();
$.each($(obj).find("input[type='file']"), function(i, tag) {
$.each($(tag)[0].files, function(i, file) {
formData.append(tag.name, file);
});
});
var params = $(obj).serializeArray();
$.each(params, function (i, val) {
formData.append(val.name, val.value);
});
return formData;
};
})(jQuery);
$.ajax({
url: base_url+'customer/customer_add',
type: 'POST',
data: values,
cache: false,
contentType: false,
processData: false,
success: function(data){
console.log(data);
}
});
的PHP
foreach($_FILES["file"]['name'] as $file => $fname) {
$file_path = $_FILES["file"]["tmp_name"][$file];
$extension = pathinfo($fname);
if($extension['extension'] == 'xls') {
$objReader = PHPExcel_IOFactory::createReader('Excel5');
}
else {
$objReader = PHPExcel_IOFactory::createReader('Excel2007');
}
$inputFileType = PHPExcel_IOFactory::identify($file_path);
$objPHPExcel = $objReader->load($file_path);
$cell_collection = $objPHPExcel->getActiveSheet()->getCellCollection();
print_r($cell_collection); die();
}
显示错误
不要相信文件扩展名。... xls
文件不是本机Excel BIFF格式的文件,无论它要求使用什么扩展名。 找到.xls
作为csv文件或包含html标记的文件的扩展名是很常见的。
使用IO Factory的identify()
方法来告诉您使用哪个阅读器; 或者只是简单地使用IO Factory load()
方法来选择正确的阅读器并为您加载文件。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.