(PECL rar >= 2.0.0)
RarEntry::getStream — Obtener manejador de archivo para entrada
Devuelve un manejador de archivo que soporta operaciones de lectura. Este manejador proporciona descompresión al vuelo para esta entrada.
El manejador no es invalidado por llamar a rar_close().
El flujo resultante no tiene verificación de integridad. En particular, archivo corrupto y descifrado con una clave errónea, no será detectado. Es responsabilidad del programador utilizar la entrada CRC para comprobar la integridad, si así lo desea.
passwordfalse.
Puede comprobar si una entrada está cifrada con RarEntry::isEncrypted().
El manejador de archivo o false si ocurre un error.
| Versión | Descripción |
|---|---|
| PECL rar 3.0.0 | Soporte para archivos RAR con nombres de entrada que se repiten ya no es defectuoso. |
Ejemplo #1 Ejemplo de RarEntry::getStream()
<?php
$rar_file = rar_open('example.rar');
if ($rar_file === false)
die("Failed to open Rar archive");
$entry = rar_entry_get($rar_file, 'Dir/file.txt');
if ($entry === false)
die("Failed to find such entry");
$stream = $entry->getStream();
if ($stream === false)
die("Failed to obtain stream.");
rar_close($rar_file); //flujo es independiente de archivo
while (!feof($stream)) {
$buff = fread($stream, 8192);
if ($buff !== false)
echo $buff;
else
break; //error fread
}
fclose($stream);
?>rar:// wrapper