42

zip ファイル内の単一ファイル「test.txt」の内容を読み取る必要があります。zip ファイル全体は非常に大きなファイル (2 GB) であり、多数のファイル (10,000,000) が含まれているため、すべてを抽出することは実行可能な解決策ではありません。単一のファイルを読み取るにはどうすればよいですか?

4

2 に答える 2

60

zip://ラッパーを使用してみてください:

$handle = fopen('zip://test.zip#test.txt', 'r'); 
$result = '';
while (!feof($handle)) {
  $result .= fread($handle, 8192);
}
fclose($handle);
echo $result;

あなたも使うことができますfile_get_contents

$result = file_get_contents('zip://test.zip#test.txt'); 
echo $result;
于 2012-05-02T19:15:30.423 に答える