Maison > cadre php > Laravel > le corps du texte

Comment implémenter le téléchargement de fichiers uniques et multiples dans Laravel

藏色散人
Libérer: 2020-04-27 11:59:22
avant
3947 Les gens l'ont consulté

La colonne tutorielle suivante de laravel vous présentera la méthode d'implémentation du téléchargement de fichiers uniques et multiples dans laravel. J'espère qu'elle sera utile aux amis dans le besoin !

Comment implémenter le téléchargement de fichiers uniques et multiples dans Laravel

Le code est super simple et facile à comprendre ! ! ! (Bienvenue pour ajouter ~)

Définissez d'abord l'itinéraire de téléchargement des fichiers :

Route::post('upload/images'['as'=>'uploadImages','uses'=>'UploadController@uploadImages']);  
 Route::post('upload/multiUpload'['as'=>'multiUpload','uses'=>'UploadController@multiUpload']);
Copier après la connexion

Définissez ensuite l'adresse du disque de téléchargement, qui sera utilisée pour stocker les fichiers plus tard. config/filesystem : disks

 'disks' => [
 
        'local' => [
            'driver' => 'local',
            'root' => storage_path('app'),
        ],
 
        'uploads'=>[
            'driver'=>'local',
            'root'=>public_path('uploads/'),
        ]
    ],
Copier après la connexion

Enfin, UploadController définit la fonction de téléchargement (utilisez la méthode de disque de Storage pour accéder au disque de téléchargement, qui est défini dans le fichier du système de fichiers précédent)

Méthode putFile : gérer fichiers à l'emplacement de stockage spécifié, par exemple, le nom du fichier est automatiquement généré, ou il peut être défini manuellement ('20190705', $file, 'test.png')

 //上传单张图
 public function uploadImages(Request $request)
    {
        if ($request->isMethod('post')) {
            $file = $request->file('file');
            if($file->isValid()){
                $path = Storage::disk('uploads')->putFile(date('Ymd') , $file);
                if($path) {
                    return ['code' => 0 , 'msg' => '上传成功' , 'data' => $path];
                }
                else {
                    return ['code' => 400 , 'msg' => '上传失败'];
                }
            }
        } else {
            return ['code' => 400, 'msg' => '非法请求'];
        }
    }
//上传多张图
 public function multiUpload(Request $request)
    {
        if($request->method('post')){
            $files = $request->allFiles();
            if(is_array($files)){
                foreach($files as $file){
                    $path = Storage::disk('uploads')->putFile(date('Ymd') , $file);
                }
                if( $path ) {
                    return ['code' => 0 , 'msg' => '上传成功' , 'data' => $path];
                }
                else {
                    return ['code' => 400 , 'msg' => '上传失败'];
                }
            }
        }else{
            return ['code' => 400, 'msg' => '非法请求'];
        }
    }
Copier après la connexion

Le dernier et le dernier : l'opération d'upload du template... voyez par vous-même le document layui Eh bien, c'est exactement la même opération ! ! ! 

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:csdn.net
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