Portada » Lenguaje PHP » Crear archivo zip después de cargar usando PHP

Crear archivo zip después de cargar usando PHP

Crear archivo zip después de cargar usando PHP. En este artículo, veremos la manera de crear un archivo formato zip. Sin embargo usaremos un formulario para cargar el archivo y el lenguaje PHP para su procesamiento y/o generación del fichero comprimido.

Crear archivo zip después de cargar usando PHP

Sin embargo, para lograr esta acción usaremos la clase ZipArchive  del PHP

Descripción y sintaxis

Esta clase crea un fichero, comprimido en extensión Zip.

 ZipArchive {
/* Propiedades */
int $status;
int $statusSys;
int $numFiles;
string $filename;
string $comment;
/* Métodos */
bool addEmptyDir ( string $dirname )
...
...
}

Los ficheros zip son muy importantes para trasladar o copiar la información desde un servidor a otro y/o para descargar contenido de nuestro servidor como copia de seguridad. También, solo mencionarles que hay varios programas para crear un archivo zip, pero en este caso creamos un archivo zip en nuestro propio servidor usando el lenguaje php.

Por lo tanto, también puede descargar el fichero creado y extraer archivos zip usando PHP como lenguaje de programación.

Requisitos para crear un fichero ZIP con PHP

1. Creación de un fichero HTML para cargar archivo

Este fichero de nombre index.html contendrá un formulario en el cual será el encargado de cargar el archivo que deseamos comprimir

<div class="row">
  <div class="col-12 col-md-12">
<!-- Contenido --> 
<form method="post" action="GenerarZip.php" enctype="multipart/form-data">
    <div class="form-group">
    <label for="usuario">Seleccione archivo para comprimir:</label>
    <input required type="file" class="form-control" name="file">
  </div>    
<input name="cargar_archivo" class="btn btn-primary" type="submit" value="Subir y Comprimir">
</form>
<br>
<!-- Fin Contenido --> 
</div>
</div><!-- Fin row -->

Este formulario HTML recoge el fichero ingresado por el usuario y lo envía a un fichero PHP para que sea procesado. Sin embargo, este usara el método POST.

2. Haz un archivo PHP para guardar y crear un archivo zip

Este fichero ejecutar si solamente recibe la información vía método POST con una variable llamada «cargar_archivo». Aquí, se declara la clase PHP para que pueda hacer la compresión del fichero que ha sido recogido por el formulario.

<?php
if(isset($_POST['cargar_archivo']))
{
 $uploadfile=$_FILES["file"]["tmp_name"];
 $folder="comprimidos/";
 $file_name=$_FILES["file"]["name"];
 move_uploaded_file($_FILES["file"]["tmp_name"], "$folder".$_FILES["file"]["name"]);

 $zip = new ZipArchive(); // Load zip library 
 $zip_name ="MiArchivo.zip"; // Nombre de Fichero ZIP
if ($zip->open($zip_name, ZipArchive::CREATE) === TRUE)
{
    // Agregamos ficheros al comprimido
 $zip->addFile("comprimidos/".$file_name);
 
    // Cerramos la compresion
    $zip->close(); 	
	// Declaramos una variable para mostrar mensaje 
$resultado="ok";
}else{
$resultado="no";	
	}
}
?>

3. Visualizar resultado de la compresión

Este apartado mostrara alertas sobre el estado del proceso. Sí, es correcto mostrara un mensaje con la siguiente leyenda «Archivo fichero ZIO ha sido creado» también ofrecerá al usuario la posibilidad de descargar el archivo comprimido en ZIP.

<?php
if ($resultado="ok"){
	 echo "<div class='alert alert-primary' role='alert'>";
	 echo "Archivo fichero ZIP ha sido creado  <a href='$zip_name'>DESCARGAR AHORA</a>";
	 echo "</div>";
	 
	}else{
		echo "<div class='alert alert-danger' role='alert'>";
	 echo "No se pudo crear el fichero ZIP";
	 echo "</div>";
		}
?>

 

Crear archivo zip despues de cargar usando PHP
Crear archivo zip despues de cargar usando PHP

CONCLUSIÓN

Si podemos observar, nos es tan complicado comprimir archivos y/o descomprimir archivos con PHP. Por lo tanto, es muy sencillo utilizando PHP y HTML. Sin embargo, pueden personalizar y/o implementar este código más adelante en sus proyectos web según tus necesidades. Y no duden en dar comentarios sobre este artículo.

Suscríbanse para poder recibir en sus correos artículos similares a este.

DESCARGA DEL CÓDIGO

Descargar Código Fuente

 

¿De cuánta utilidad te ha parecido este contenido?

¡Haz clic en una estrella para puntuarlo!

Promedio de puntuación 0 / 5. Recuento de votos: 0

Hasta ahora, ¡no hay votos!. Sé el primero en puntuar este contenido.

1 comentario en “Crear archivo zip después de cargar usando PHP”

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Scroll al inicio
Esta web utiliza cookies propias para su correcto funcionamiento. Contiene enlaces a sitios web de terceros con políticas de privacidad ajenas que podrás aceptar o no cuando accedas a ellos. Al hacer clic en el botón Aceptar, acepta el uso de estas tecnologías y el procesamiento de tus datos para estos propósitos.
Privacidad