...
✅ Nowości, motywy, wtyczki WEB i WordPress. Tutaj dzielimy się wskazówkami i najlepszymi rozwiązaniami dla stron internetowych.

Jak zaimplementować przesyłanie porcji w PHP

17

Opublikowany w PHP

Ostatnio jeden z naszych czytelników zapytał o przesyłanie porcji w PHP. Chcą przesyłać duże pliki w szybki i niezawodny sposób. Wdrażając przesyłanie porcji, możesz łatwo przesyłać/przenosić duże pliki na serwer. W tym artykule napiszę kod PHP do przesyłania porcji, który może być przydatny do przesyłania/przenoszenia dużych plików.

Czasami w aplikacji internetowej musisz poradzić sobie z dużymi plikami. Mogą to być pliki wideo, zip, które muszą zostać przeniesione do określonej lokalizacji na serwerze.

Zaimplementowanie przesyłania porcji w PHP jest bardzo łatwe. W poniższym kodzie przenosimy plik źródłowy do katalogu ‘uploads’. Czytamy plik w kawałkach po 256 bajtów i zapisujemy go w pliku docelowym. Ten proces będzie kontynuowany, dopóki skrypt nie odczyta wszystkich bajtów z pliku źródłowego i zapisze te bajty w pliku docelowym. Do tej operacji używam natywnych funkcji PHP – fopen, fread, fwrite i fseek.

Załóżmy, że masz plik „video.mp4", który chcesz przenieść do folderu „przesłane”. Poniżej znajduje się kod, który przenosi plik porcjami do folderu docelowego.

<?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.";

Otóż ​​to! To bardzo proste zaimplementowanie przesyłania porcji w PHP. Chciałbym usłyszeć Twoje przemyślenia lub sugestie w sekcji komentarzy poniżej.

Powiązane artykuły

Źródło nagrywania: artisansweb.net

Ta strona korzysta z plików cookie, aby poprawić Twoje wrażenia. Zakładamy, że nie masz nic przeciwko, ale możesz zrezygnować, jeśli chcesz. Akceptuję Więcej szczegółów