Maison > Article > développement back-end > Exemples de téléchargement de fichiers uniques et multiples PHP expliqués
Cet article vous donne une analyse détaillée du code et des solutions aux problèmes liés au téléchargement de fichiers uniques et au téléchargement de fichiers multiples en PHP. Veuillez l'étudier et vous y référer ensemble.
Quand $_FILES est-il un tableau vide ?
Lorsque l'enctype de soumission du formulaire n'est pas égal à multipart/form-data dans le fichier de configuration php.ini, file_uploads = Off et la taille du fichier téléchargé > la taille maximale de téléchargement configurée dans le php.ini fichier de configuration
Tant que $_FILES est un tableau vide, les problèmes ci-dessus peuvent survenir et doivent être corrigés !
Si vous cliquez immédiatement sur le bouton "Télécharger" sans sélectionner de fichier, $_FILES sera un tableau avec des éléments. Chaque attribut de l'élément est une chaîne vide et l'attribut d'erreur est 4
Téléchargement d'un seul fichier
Structure de données $_FILESarray( 'filename' => array( 'name' => 'xxx.png', 'type' => 'image/png', 'size' => 2548863, 'tmp_name' => '/img/sdsdsd.png', 'error' => 0 ) )Que
ou 单文件
aura 5 attributs fixes : nom / taille / type / tmp_name / erreur 多文件上传
Téléchargement de fichiers multiples
Par rapport à un seul le téléchargement de fichiers, le téléchargement multi-fichiers est beaucoup plus compliqué à traiter. Les deux formes de téléchargement multi-fichiers sur le front-end//name相同 <form method="post" enctype="multipart/form-data"> <input type="file" name="wt[]"/> <input type="file" name="wt[]"/> <input type="submit" value="提交"/> </form> //name不同(简单点) <form method="post" enctype="multipart/form-data"> <input type="file" name="wt"/> <input type="file" name="mmt"/> <input type="submit" value="提交"/> </form>
.
dans le backend est différente$_FILES
//name相同 array (size=1) 'wt' => array (size=5) 'name' => array (size=2) 0 => string '新建文本文档 (2).txt' (length=26) 1 => string '新建文本文档.txt' (length=22) 'type' => array (size=2) 0 => string 'text/plain' (length=10) 1 => string 'text/plain' (length=10) 'tmp_name' => array (size=2) 0 => string 'C:\Windows\php1D64.tmp' (length=22) 1 => string 'C:\Windows\php1D65.tmp' (length=22) 'error' => array (size=2) 0 => int 0 1 => int 0 'size' => array (size=2) 0 => int 0 1 => int 1820 //name不同(简单点) array (size=2) 'wt' => array (size=5) 'name' => string '新建文本文档 (2).txt' (length=26) 'type' => string 'text/plain' (length=10) 'tmp_name' => string 'C:\Windows\php39C7.tmp' (length=22) 'error' => int 0 'size' => int 0 'mmt' => array (size=5) 'name' => string '新建文本文档.txt' (length=22) 'type' => string 'text/plain' (length=10) 'tmp_name' => string 'C:\Windows\php39D8.tmp' (length=22) 'error' => int 0 'size' => int 1820Objectif de l'erreur de champValeur : 1 Fichier téléchargé La valeur limitée par l'option upload_max_filesize dans php.ini a été dépassée. 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. Valeur : 3 Le fichier n'a été que partiellement téléchargé. Valeur : 4 Aucun fichier n'a été téléchargé. Valeur : 5 La taille du fichier de téléchargement est 0.
Analyse des principes du développement du module multijoueur PHP
Explication de l'utilisation de XHProf pour détecter les goulots d'étranglement des performances PHP
Résumé connexe des directives de modèle personnalisé dans le framework Laravel
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!