Maison  >  Article  >  développement back-end  >  Quel tableau système PHP utilise-t-il pour recevoir les informations sur les fichiers téléchargés ?

Quel tableau système PHP utilise-t-il pour recevoir les informations sur les fichiers téléchargés ?

WBOY
WBOYoriginal
2023-05-06 10:43:07695parcourir

Le tableau système utilisé par PHP pour recevoir les informations sur les fichiers téléchargés est $_FILES.

En PHP, nous devons souvent gérer les téléchargements de fichiers, tels que le téléchargement d'images, de vidéos et d'autres fichiers. Afin de gérer les informations et données pertinentes pendant le processus de téléchargement, PHP fournit un tableau système spécial $_FILES pour stocker les informations sur les fichiers téléchargés.

La variable $_FILES est un tableau associatif bidimensionnel avec la structure suivante :

$_FILES = array(
    'file' => array(
        'name' => 'filename.txt',             //文件名
        'type' => 'text/plain',               //文件MIME类型
        'tmp_name' => '/tmp/php/php1h4jCk',   //上传的临时文件名
        'error' => 0,                         //上传的错误代码
        'size' => 123                           //上传文件的大小
   )
);

Où, "fichier" dans le tableau est le nom de l'élément du formulaire, comme le code HTML suivant :

<form enctype="multipart/form-data" method="POST">
    <input type="file" name="file"/>
</form>

Sous cette forme, "file" C'est le nom de l'élément du formulaire.

Dans $_FILES, les informations spécifiques stockées incluent :

  • name : nom du fichier téléchargé.
  • type : type MIME du fichier téléchargé.
  • tmp_name : Le nom du fichier temporaire téléchargé, stocké dans le répertoire temporaire côté serveur.
  • error : Le code d'erreur du fichier téléchargé. S'il est 0, cela signifie que le téléchargement a réussi.
  • size : La taille du fichier téléchargé.

Voici la signification de chaque champ dans $_FILES :

  • nom

Le nom de fichier d'origine du fichier téléchargé, à l'exclusion du chemin du fichier. Si le nom du fichier est modifié lors du téléchargement d'un fichier, cette variable stocke le nouveau nom du fichier.

  • type

Le type MIME du fichier téléchargé, c'est-à-dire le type de contenu du fichier, tel que text/plain, application/octet-stream, etc.

  • tmp_name

Le nom du fichier temporaire du fichier téléchargé et le chemin pour stocker ce fichier temporaire. Ce chemin est le répertoire temporaire côté serveur.

  • erreur

Code d'erreur pour le téléchargement de fichiers. Si le téléchargement réussit, cette valeur est 0. Les autres valeurs possibles incluent :

- UPLOAD_ERR_OK:文件上传成功。
- UPLOAD_ERR_INI_SIZE:上传的文件超过了php.ini 中 upload_max_filesize 选项限制的值。
- UPLOAD_ERR_FORM_SIZE:上传文件的大小超过了 HTML 表单中 MAX_FILE_SIZE 选项指定的值。
- UPLOAD_ERR_PARTIAL:文件只有部分被上传。
- UPLOAD_ERR_NO_FILE:没有文件被上传。
- UPLOAD_ERR_CANT_WRITE:写入磁盘失败。
- UPLOAD_ERR_EXTENSION:PHP扩展停止文件上传。
  • size

La taille du fichier téléchargé, en octets.

Exemple d'utilisation de la variable $_FILES :

Si nous souhaitons télécharger une image dans un formulaire, nous pouvons utiliser le code HTML suivant :

<form enctype="multipart/form-data" method="POST">
    <input type="hidden" name="MAX_FILE_SIZE" value="100000" />
    <input type="file" name="image" />
    <input type="submit" name="submit" value="Upload Image" />
</form>

Côté serveur, nous pouvons utiliser le code PHP suivant pour gérer le téléchargement de fichiers :

<?php
if(isset($_POST['submit']))
{
    $file = $_FILES['image'];
    $filename = $file['name'];
    $filetmp = $file['tmp_name'];
    $filesize = $file['size'];
    $filetype = $file['type'];

    // TODO: 处理上传文件

    move_uploaded_file($filetmp, "uploads/" . $filename);
}
?>

Dans Lors du traitement des fichiers téléchargés, nous vérifions d'abord si le formulaire soumis contient le champ "soumettre". Ceci afin d'éviter des erreurs lors du traitement des fichiers téléchargés sans soumettre le formulaire.

Nous obtenons d'abord les informations sur le fichier à partir de la variable $_FILES et définissons les variables $filename, $filetmp, $filesize et $filetype pour stocker respectivement le nom de fichier, le nom de fichier temporaire du fichier téléchargé, la taille du fichier et le type MIME. .

Ensuite, nous pouvons utiliser la fonction PHP move_uploaded_file() pour déplacer le fichier téléchargé du répertoire temporaire vers le répertoire spécifié où nous stockons le fichier, comme le répertoire "uploads/" dans l'exemple ci-dessus.

Résumé :

$_FILES est la variable clé pour le traitement des téléchargements de fichiers en PHP. Elle contient diverses informations sur les fichiers téléchargés, notamment le nom du fichier, le type MIME, le nom du fichier temporaire de téléchargement, la taille, etc. Lorsque vous utilisez $_FILES, nous devons prêter attention au moment de soumission du formulaire, à la logique de traitement des fichiers téléchargés et à la méthode de stockage des fichiers téléchargés.

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!

Déclaration:
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