0

错误显示 -> 警告:ZipArchive::getFromName(): 无效或未初始化的 Zip 对象

上传文件和读取 excel 文件时,有时会显示该错误消息。

这是我的代码:

$pasFile    = $_FILES['inputFileLocation']['name'];
$target_path    = basename($pasFile);
if(move_uploaded_file($_FILES["inputFileLocation"]["tmp_name"], $target_path)){
        require_once '../template/PHPExcel/Classes/PHPExcel.php';
        $objReader = PHPExcel_IOFactory::createReader('Excel2007');
        $worksheet_names = $objReader->listWorksheetNames($pasFile);
        $countWorksheet = count($worksheet_names);
        $optionSheetName = "<option></option>";
        for($x = 0;$x < $countWorksheet;$x++){
            $optionSheetName = $optionSheetName."<option value='".$worksheet_names[$x]."'>".$worksheet_names[$x]."</option>";
        }
    }

先感谢您!:)

4

1 回答 1

0

我的错!我上传的文件有不同类型的 excel 格式。

此代码现在通过识别格式然后将其传递给创建阅读器来工作。非常感谢贝克先生!我添加了以下代码:

    $inputFileType = PHPExcel_IOFactory::identify($pasFile);
    $objReader = PHPExcel_IOFactory::createReader($inputFileType);

结果这个:

$pasFile    = $_FILES['inputFileLocation']['name'];
$target_path    = basename($pasFile);
if(move_uploaded_file($_FILES["inputFileLocation"]["tmp_name"], $target_path)){
        require_once '../template/PHPExcel/Classes/PHPExcel.php';
        $inputFileType = PHPExcel_IOFactory::identify($pasFile);
        $objReader = PHPExcel_IOFactory::createReader($inputFileType);
        $worksheet_names = $objReader->listWorksheetNames($pasFile);
        $countWorksheet = count($worksheet_names);
        $optionSheetName = "<option></option>";
        for($x = 0;$x < $countWorksheet;$x++){
            $optionSheetName = $optionSheetName."<option value='".$worksheet_names[$x]."'>".$worksheet_names[$x]."</option>";
        }
    }

在 createReader() 之前先识别()...

于 2013-05-23T03:17:29.683 回答