Maison > développement back-end > tutoriel php > Fonction de téléchargement de fichiers PHP - téléchargement de plusieurs fichiers

Fonction de téléchargement de fichiers PHP - téléchargement de plusieurs fichiers

墨辰丷
Libérer: 2023-03-25 19:56:01
original
2284 Les gens l'ont consulté

Cette section présente principalement la fonction de téléchargement multi-fichiers des fichiers de téléchargement PHP. Tant que la balise de téléchargement de fichier dans le formulaire est nommée sous la forme d'un tableau, plusieurs fichiers peuvent être téléchargés simultanément.

Regardons un exemple :
---------------------------------- - ---------------------------------

<form enctype="multipart/form-data" action="<?=$_SERVER[&#39;PHP_SELF&#39;]?>" method="post">
    <input type="hidden" name="MAX_FILE_SIZE" value="104857600" />
    <table>
        <tr>
            <td>上传文件:<input name="upload_file[]" type="file" size="50" /></td>
        </tr>
        <tr>
            <td>上传文件:<input name="upload_file[]" type="file" size="50" /></td>
        </tr>
        <tr>
            <td>上传文件:<input name="upload_file[]" type="file" size="50" /></td>
        </tr>
        <tr>
            <td>上传文件:<input name="upload_file[]" type="file" size="50" /></td>
        </tr>
        <tr>
            <td><input type="submit" name="submit" value="上传"/></td>
        </tr>
    </table>
</form>

<?php
    function upload($file_error, $file_tmp_name, $file_name){
        $info = "";

        if($file_name == "")
            return $info;

        switch($file_error){
            case UPLOAD_ERR_INI_SIZE:
                $info = $file_name. ": 文件大小超过了服务器的限制";
                break;
            case UPLOAD_ERR_FORM_SIZE:
                $info = $file_name. ": 文件大小超过了浏览器的限制";
                break;
            case UPLOAD_ERR_PARTIAL:
                $info = $file_name. ": 只上传了部分文件";
                break;
            case UPLOAD_ERR_NO_FILE:
                $info = $file_name. ": 没有文件被上传";
                break;
            case UPLOAD_ERR_NO_TMP_DIR:
                $info = $file_name. ": 找不到临时文件夹";
                break;
            case UPLOAD_ERR_CANT_WRITE:
                $info = $file_name. ": 文件写入失败";
                break;
            case UPLOAD_ERR_OK:
                $upload_dir = &#39;./&#39;.iconv("UTF-8","gb2312",$file_name);
                if(file_exists($upload_dir)){
                    $info = $file_name.": 同名文件已经存在";
                }else{
                    if(move_uploaded_file($file_tmp_name,$upload_dir)){
                        $info = $file_name.": 文件上传成功";
                    }else{
                        $info = $file_name.": 文件上传失败";
                    }
                }
                break;
        }
        return $info;
    }

    if(isset($_POST[&#39;submit&#39;])){
        $info = &#39;&#39;;
        $count = count($_FILES[&#39;upload_file&#39;][&#39;name&#39;]);
        for($i=0; $i<$count; ++$i){
            if($_FILES[&#39;upload_file&#39;][&#39;name&#39;][$i] == "")
                continue;
            $info = upload(
                $_FILES[&#39;upload_file&#39;][&#39;error&#39;][$i],
                $_FILES[&#39;upload_file&#39;][&#39;tmp_name&#39;][$i],
                $_FILES[&#39;upload_file&#39;][&#39;name&#39;][$i]
            );
        }
        echo $info;
    }

?>
Copier après la connexion

--- -- ------------------------------------------------ -- --------------------------------
Les résultats de l'exécution du code sont les suivants :


Remarque :

1. Dans , name="upload_file[]" doit être dans la forme d'un tableau Nommez-le, sinon une erreur se produira : "Uninitialized string offset: 0", cette phrase signifie que la valeur de votre clé de tableau est hors limites

2 $_FILES['upload_file'][. 'name'][ $i], upload_file est le nom du marqueur de fichier de téléchargement dans le formulaire. Lors du téléchargement de plusieurs fichiers, l'indice de troisième dimension du tableau $_FILES sera automatiquement numéroté séquentiellement à partir de 0.

Recommandations associées :

Fonction de téléchargement de fichiers PHP pour implémenter le partage de code

Configurer php.ini pour implémenter le téléchargement de fichiers php. function

Comment configurer php.ini pour implémenter la fonction de téléchargement de fichiers 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:
source:php.cn
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
Derniers numéros
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal