【问题标题】:php RarArchive & file_get_contentsphp RarArchive & file_get_contents
【发布时间】:2017-07-31 13:05:23
【问题描述】:

我需要打开 rar 压缩包,搜索所有 *.txt 文件,读取这些文件并将内容放入 php 数组中

$file="archive.rar";
$ext = pathinfo($file, PATHINFO_EXTENSION);
$tmp=$_SERVER['DOCUMENT_ROOT'].'/tmp';

if($ext=='rar'){
    $archive = RarArchive::open($file);
    $entries = $archive->getEntries();
    foreach ($entries as $entry) {
        echo file_get_contents($entry->getName());// not working
        $entry->extract($tmp);
    }
    $archive->close();  
}

【问题讨论】:

  • 你有什么尝试'将内容放入 php 数组'?
  • 我想阅读所有的 readme.txt 文件并发布它

标签: php rar


【解决方案1】:

RarEntry::getName() 方法仅返回相对于存档的路径file_get_contents() 函数对此档案一无所知,它只是尝试在当前目录中查找常规文件。您可以根据格式使用rar:// 协议包装器:

rar://<url encoded archive name>[*][#[<url encoded entry name>]]

例如

echo file_get_contents('rar://' . $file . '#' . $entry->getName());

【讨论】:

    猜你喜欢
    • 2017-09-14
    • 2011-10-01
    • 2018-06-26
    • 1970-01-01
    • 1970-01-01
    • 2011-10-13
    • 2011-07-09
    • 2012-06-19
    • 2011-06-23
    相关资源
    最近更新 更多