Explication détaillée de $_FILES dans les variables super globales PHP

藏色散人
Libérer: 2023-04-08 10:48:01
avant
3912 Les gens l'ont consulté

Explication détaillée de $_FILES dans les variables super globales PHP

$_FILES - Un tableau d'éléments téléchargés vers le script actuel via HTTP POST.

Supposons que nous téléchargeons le nom du champ du fichier='userfile', le tableau $_FILES comprend :

$_FILES['userfile']['name']      //客户端机器文件的原名称。
$_FILES['userfile']['type']     //文件的 MIME 类型,如果浏览器提供此信息的话。一个例子是“image/gif”。不过此 MIME 类型在 PHP 端并不检查,因此不要想当然认为有这个值。
$_FILES['userfile']['size']     //已上传文件的大小,单位为字节。
$_FILES['userfile']['tmp_name']   //文件被上传后在服务端储存的临时文件名。
$_FILES['userfile']['error']      //和该文件上传相关的错误代码。此项目是在 PHP 4.2.0 版本中增加的。
/**
Copier après la connexion

Les codes d'erreur sont :

UPLOAD_ERR_OK

La valeur est 0, aucune erreur ne se produit et le fichier est téléchargé avec succès.

UPLOAD_ERR_INI_SIZE

La valeur est 1 et le fichier téléchargé dépasse la valeur limitée par l'option upload_max_filesize dans php.ini.

UPLOAD_ERR_FORM_SIZE

Avec une valeur de 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.

par exemple, ajoutez un champ masqué dans le formulaire : l'unité de valeur est en octets

<form enctype="multipart/form-data" action="test.php" method="POST">
  <!-- MAX_FILE_SIZE must precede the file input field -->
  <input type="hidden" name="MAX_FILE_SIZE" value="12" />
  <!-- Name of input element determines name in $_FILES array -->
  Send this file: <input name="userfile" type="file" />
  <input type="submit" value="Send File" />
</form>
Copier après la connexion

                                            3. Seule une partie du fichier est téléchargée.

UPLOAD_ERR_NO_FILE

La valeur est 4 et aucun fichier n'a été téléchargé.

UPLOAD_ERR_NO_TMP_DIR

La valeur est 6 et le dossier temporaire est introuvable. Introduit dans PHP 4.3.10 et PHP 5.0.3.

UPLOAD_ERR_CANT_WRITE

La valeur est 7, l'écriture du fichier a échoué. Introduit dans PHP 5.1.0.

Une fois le fichier téléchargé, il sera stocké par défaut dans le répertoire temporaire par défaut du serveur, à moins que upload_tmp_dir dans php.ini ne soit défini sur un autre chemin. Le répertoire temporaire par défaut côté serveur peut être réinitialisé en modifiant la variable d'environnement TMPDIR de l'environnement d'exécution PHP, mais sa définition en exécutant la fonction putenv() dans le script PHP n'a aucun effet. Cette variable d'environnement peut également être utilisée pour confirmer que d'autres opérations sont également effectuées sur le fichier téléchargé. Autres fonctions pouvant être utilisées pour le téléchargement de fichiers :

is_uploaded_file :

is_uploaded_file — 判断文件是否是通过 HTTP POST 上传的
is_uploaded_file ( string $filename ) : bool
Copier après la connexion

Paramètres : filename - le nom du fichier à vérifier.

Valeur de retour : VRAI en cas de succès, ou FAUX en cas d'échec. Renvoie VRAI si le fichier indiqué par nom de fichier a été téléchargé via HTTP POST. Cela peut être utilisé pour garantir qu'un utilisateur malveillant ne puisse pas tromper un script pour qu'il accède à des fichiers autrement inaccessibles, tels que /etc/passwd.

move_uploaded_file :

move_uploaded_file — 将上传的文件移动到新位置
move_uploaded_file ( string $filename , string $destination ) : bool
Copier après la connexion

Paramètres : filename Le nom du fichier de destination téléchargé déplace le fichier vers cet emplacement (chemin absolu)

Ceci ; vérifications des fonctions Et assurez-vous que le fichier spécifié par nom de fichier est un fichier de téléchargement légal (c'est-à-dire téléchargé via le mécanisme de téléchargement HTTP POST de PHP). Si le fichier est légal, il est déplacé vers le fichier spécifié par destination. Pour plus de connaissances sur php, veuillez visiter le

tutoriel php

 !

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!

Étiquettes associées:
php
source:cnblogs.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!