gpt4 book ai didi

PHP:按名称打开压缩文件(不解压)

转载 作者:行者123 更新时间:2023-11-29 23:16:25 26 4
gpt4 key购买 nike

我有一个 .zip 文件,其中包含一个 .csv 文件。我想知道我是否可以以某种方式使用这个 .csv 文件而无需在本地提取。我知道 ZipArchive 类可以在不解压的情况下获取文件内容,如下所示:

$zip = new ZipArchive;
$zip->open('archive.zip');
$contents = $z->getFromName('file.csv');

这很好,但我需要将它与 MySQL 的 LOAD DATA INFILE 查询一起使用,其中我必须提供文件名,而不是内容。

我听说过 zip:// 协议(protocol),并且我尝试过以下操作:

LOAD DATA INFILE 'zip:///Library/WebServer/Documents/archive.zip#file.csv'
INTO TABLE `test`
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\n'
(`column1`, `column2`);

但是这里好像不行。适用于提取的 .csv 文件,无需 zip:// 协议(protocol)。

有什么想法吗?

最佳答案

除非您指定LOCAL关键字,LOAD DATA INFILE将指示mysql服务器读取放置在服务器上的数据文件。 mysql 客户端(PHP)不会接触该文件,它只是发送文件名。

如果指定LOCAL关键字,mysql客户端会将文件从客户端传输到服务器,但服务器仍然会读取该文件。不幸的是,不支持 zip 文件。

http://dev.mysql.com/doc/refman/5.0/en/load-data.html

关于PHP:按名称打开压缩文件(不解压),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27753651/

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