...
✅ Noticias, temas, complementos de WEB y WordPress. Aquí compartimos consejos y las mejores soluciones para sitios web.

Cómo implementar la carga de fragmentos en PHP

175

Publicado en PHP

Recientemente, uno de nuestros lectores preguntó sobre la carga de fragmentos en PHP. Quieren cargar archivos grandes de una manera rápida y confiable. Al implementar la carga de fragmentos, puede cargar / mover archivos grandes en un servidor fácilmente. En este artículo, escribiré un código PHP para la carga de fragmentos que puede ser útil para cargar / mover archivos grandes.

A veces, en la aplicación web, debe tratar con archivos grandes. Pueden ser archivos zip de video que deben moverse a una ubicación específica en el servidor.

Es muy fácil implementar la carga de fragmentos en PHP. En el siguiente código, estamos moviendo el archivo fuente dentro del directorio ‘uploads’. Leemos el archivo en trozos de 256 bytes y lo escribimos en el archivo de destino. Este proceso continuará hasta que el script lea todos los bytes del archivo de origen y escriba estos bytes en el archivo de destino. Para esta operación, estoy usando funciones nativas de PHP: fopen, fread, fwrite y fseek.

Supongamos que tiene un archivo ‘video.mp4’ que desea mover a la carpeta ‘uploads’. A continuación se muestra el código que mueve un archivo en trozos a la carpeta de destino.

<?php
$source = 'video.mp4';
$orig_file_size = filesize($source);
$destination = 'uploads/video.mp4';
 
$chunk_size = 256; // chunk in bytes
$upload_start = 0;
 
$handle = fopen($source, "rb");
 
$fp = fopen($destination, 'w');
 
while($upload_start < $orig_file_size) {
 
    $contents = fread($handle, $chunk_size);
    fwrite($fp, $contents);
 
    $upload_start += strlen($contents);
    fseek($handle, $upload_start);
}
 
fclose($handle);
fclose($fp);
 
echo "File uploaded successfully.";

¡Eso es! Es así de simple implementar la carga de fragmentos en PHP. Me gustaría escuchar sus pensamientos o sugerencias en la sección de comentarios a continuación.

Artículos relacionados

Fuente de grabación: artisansweb.net

This website uses cookies to improve your experience. We'll assume you're ok with this, but you can opt-out if you wish. Accept Read More