Maison  >  Article  >  Comment implémenter le téléchargement de fichiers en plusieurs parties en utilisant PHP

Comment implémenter le téléchargement de fichiers en plusieurs parties en utilisant PHP

爱喝马黛茶的安东尼
爱喝马黛茶的安东尼avant
2020-01-17 17:35:146220parcourir

Comment implémenter le téléchargement de fichiers en plusieurs parties en utilisant PHP

PHP utilise le tableau de variables super global $_FILES pour enregistrer les informations relatives au téléchargement de fichiers.

1.file_uploads=on/off

S'il est autorisé de télécharger des fichiers via http

2.max_execution_time= 30

Le temps d'exécution maximum autorisé pour le script, s'il dépasse ce temps, une erreur sera signalée

3.memory_limit=50M

Définir le script à allouer La quantité maximale de mémoire pour éviter que les scripts incontrôlables n'occupent trop de mémoire. Cette directive ne peut être définie qu'au moment de la compilation.

Cela ne prend effet que lorsque l'indicateur --enable-memory-limit est défini

4.upload_max_filesize=20M

La taille maximale des fichiers autorisé à être téléchargé, cette La commande doit être inférieure à post_max_size

5.upload_tmp_dir

Télécharger le répertoire de stockage temporaire du fichier

6.post_max_size=30M

Autoriser la taille maximale que le mode de publication peut accepter

$_FILES['myFile']['name'] Le nom d'origine du dernier fichier sur le client.

$_FILES['myFile']['type'] Le type MIME du fichier, qui nécessite que le navigateur prenne en charge ces informations, telles que "image/gif".

$_FILES['myFile']['size'] La taille du fichier téléchargé, en octets.

$_FILES['myFile']['tmp_name'] Le nom de fichier temporaire stocké sur le serveur après le téléchargement du fichier, généralement le nom par défaut du système. Il peut être spécifié dans upload_tmp_dir du php.ini, mais le définir avec la fonction putenv() ne fonctionnera pas.

$_FILES['myFile']['error'] Code d'état lié au téléchargement du fichier. ['erreur'] a été ajouté dans PHP 4.2.0. Voici sa description : (Ils sont devenus des constantes après PHP3.0)

UPLOAD_ERR_OK

Valeur : 0 ; Aucune erreur ne s'est produite et le fichier a été téléchargé avec succès.

UPLOAD_ERR_INI_SIZE

Valeur : 1 ; Le fichier téléchargé dépasse la valeur limitée par l'option upload_max_filesize dans php.ini.

UPLOAD_ERR_FORM_SIZE

Valeur : 2 ; La taille du fichier téléchargé dépasse la valeur spécifiée par l'option MAX_FILE_SIZE dans le formulaire HTML.

UPLOAD_ERR_PARTIAL

Valeur : 3 ; Seule une partie du fichier a été téléchargée.

UPLOAD_ERR_NO_FILE

Valeur : 4 ; Aucun fichier n'a été téléchargé.

Valeur : 5 ; La taille du fichier téléchargé est 0.

Une fois le fichier téléchargé, il est stocké par défaut dans le répertoire temporaire. répertoire ou Déplacez-le ailleurs, ou s'il n'existe pas, il sera supprimé.

En d'autres termes, que le téléchargement réussisse ou non, les fichiers du répertoire temporaire seront définitivement supprimés une fois le script exécuté.

Pièce jointe : Comment modifier la limite de taille des fichiers téléchargés PHP

Téléchargement général de fichiers, sauf si le fichier est très petit. Comme pour un fichier de 5 Mo, le téléchargement prendra probablement plus d’une minute.

Mais en php, le temps d'exécution maximum par défaut de cette page est de 30 secondes, c'est-à-dire que s'il dépasse 30 secondes, le script cessera de s'exécuter

Ce résultat. dans l'erreur qu'elle ne peut pas être ouverte. Pour la situation de la page Web, nous pouvons modifier max_execution_time

et rechercher

max_execution_time

dans php.ini. est de 30 secondes. Remplacez-le par

max_execution_time = 0

0 signifie aucune limite

2. Modifiez post_max_size pour définir la taille maximale autorisée pour les données POST. Ce paramètre affecte également les téléchargements de fichiers.

La taille post_max_size par défaut de PHP est de 2 Mo. Si la taille des données POST est supérieure à post_max_size, les superglobales $_POST et $_FILES seront vides.

Recherchez post_max_size. 🎜>

post_max_size = 150M

3. De nombreuses personnes modifieront la deuxième étape, mais la taille maximale lors du téléchargement de fichiers est toujours de 8 M.

Pourquoi ? Nous devons également modifier un paramètre upload_max_filesize pour représenter la taille maximale du fichier téléchargé.

Recherchez upload_max_filesize, la valeur par défaut est 8M et remplacez-la par

upload_max_filesize = 100M

Une autre chose à noter est que post_max_size est meilleur que upload_max_filesize.

Affichage des effets de téléchargement :

Comment implémenter le téléchargement de fichiers en plusieurs parties en utilisant PHP

Site Web PHP chinois, il existe de nombreux

tutoriels vidéo PHP gratuits, tout le monde est invité à apprendre !

Cet article est reproduit à partir de : https://www.jianshu.com/p/6460dc947209

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer