gpt4 book ai didi

php - fatal error : Uncaught PhpOffice\PhpSpreadsheet\Reader\Exception: Could not find zip member

转载 作者:行者123 更新时间:2023-12-04 19:48:28 95 4
gpt4 key购买 nike

我已经安装了最新版本的this使用 Composer 的库。我创建了一个测试文件来测试库的功能,但是当我尝试解析一个文件并从中创建一个数据数组时,我收到了这个错误;

Fatal error: Uncaught PhpOffice\PhpSpreadsheet\Reader\Exception: Could not find zip member zip:///home/klik/tmp/php4cfRJH#_rels/.rels in /home/klik/scripts/PhpSpreadsheet-master/src/PhpSpreadsheet/Shared/File.php:159
Stack trace:
#0 /home/klik/scripts/PhpSpreadsheet-master/src/PhpSpreadsheet/Reader/Xlsx.php(392): PhpOffice\PhpSpreadsheet\Shared\File::assertFile('/home/klik/tmp/...', '_rels/.rels')
#1 /home/klik/scripts/PhpSpreadsheet-master/test.php(37): PhpOffice\PhpSpreadsheet\Reader\Xlsx->load('/home/klik/tmp/...')
#2 {main}thrown in /home/klik/scripts/PhpSpreadsheet-master/src/PhpSpreadsheet/Shared/File.php on line 159

这是我的test.php 文件:

<?php

echo '<!DOCTYPE html>
<html>
<body>
<form method="post" action="test.php" enctype="multipart/form-data">
<div class="form-group">
<label for="exampleInputFile">File Upload</label>
<input type="file" name="file" class="form-control" id="exampleInputFile">
</div>
<button type="submit" name="submit" class="btn btn-primary">Submit</button>
</form>
</body>
</html>';

require_once 'vendor/autoload.php';

use PhpOffice\PhpSpreadsheet\Spreadsheet;
use PhpOffice\PhpSpreadsheet\Reader\Csv;
use PhpOffice\PhpSpreadsheet\Reader\Xlsx;

if (isset($_POST['submit'])) {

$file_mimes = array('text/x-comma-separated-values', 'text/comma-separated-values', 'application/octet-stream', 'application/vnd.ms-excel', 'application/x-csv', 'text/x-csv', 'text/csv', 'application/csv', 'application/excel', 'application/vnd.msexcel', 'text/plain', 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');

if(isset($_FILES['file']['name']) && in_array($_FILES['file']['type'], $file_mimes)) {

$arr_file = explode('.', $_FILES['file']['name']);
$extension = end($arr_file);

if('csv' == $extension) {
$reader = new \PhpOffice\PhpSpreadsheet\Reader\Csv();
} else {
$reader = new \PhpOffice\PhpSpreadsheet\Reader\Xlsx();
}

$spreadsheet = $reader->load($_FILES['file']['tmp_name']);

$sheetData = $spreadsheet->getActiveSheet()->toArray();

print_r($sheetData);exit;
}
}
?>

我用的是最简单的.xlsExcel文件进​​行处理。

img


php -v 使用的版本:

PHP 7.4.14 (cli)(构建时间:2021 年 1 月 30 日 20:03:43)( ZTS )版权所有 (c) The PHP GroupZend Engine v3.4.0,版权所有 (c) Zend Technologies


最佳答案

if('csv' == $extension) {     
$reader = new \PhpOffice\PhpSpreadsheet\Reader\Csv();
} else if('xls' == $extension) {
$reader = new \PhpOffice\PhpSpreadsheet\Reader\Xls();
} else
$reader = new \PhpOffice\PhpSpreadsheet\Reader\Xlsx();

关于php - fatal error : Uncaught PhpOffice\PhpSpreadsheet\Reader\Exception: Could not find zip member,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69594200/

95 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com