<?php
//Copyright © McAnam.com
function iDescomprimir($sFichOrigen){
$iTamMaxDestino = 4000000; // 4 Megas
$sNombre = "McAnam.des";
if ( ! $fOrigen = @gzopen($sFichOrigen, "rb"))
return false;
$sDesBin = gzread($fOrigen, $iTamMaxDestino);
gzclose($fOrigen);
if (strstr($sFichOrigen, ".gz"))
$sFichDetino = substr($sFichOrigen, 0, strrpos($sFichOrigen, ".gz"));
else if (strrpos($sFichOrigen, "\"))
$sFichDetino = substr($sFichOrigen, 0, strrpos($sFichOrigen, "\") + 1).$sNombre;
else if (strrpos($sFichOrigen, "/"))
$sFichDetino = substr($sFichOrigen, 0, strrpos($sFichOrigen, "/") + 1).$sNombre;
else
$sFichDetino = $sNombre;
if ( ! $fDestino = fopen ($sFichDetino, "wb"))
return false;
fwrite($fDestino, $sDesBin);
fclose($fDestino);
return true;
}
// Ejemplo:
if (iDescomprimir ("directorio_fichero/archivo_origen.xxx.gz"))
{
echo "Fichero descomprimido satisfactoriamente !!!";
}else{
echo "Se ha producido un error en la descompresión del fichero.<br>";
echo "Asegúrese de que la ruta del fichero a descomprimir es valida y tiene permisos de escritura / lectura";
}
?>
Autor: McAnam
http://www.mcanam.com/articulos/PHP.php?id=12
Usuarios que han visto este tema también han visto...
- Listado de registros PHP MySQL
- Profiling en PHP: ¿qué partes consumen más?
- Información Encriptada en la DB Oracle (PHP)
- Reemplazar Texto en la Base de Datos
- Reporte de errores en PHP
- Versión imprimible de este documento
- Enviar por e-mail este documento