Учебники

Laravel — Загрузка файлов

Загрузка файлов в Laravel очень проста. Все, что нам нужно сделать, — это создать файл представления, в котором пользователь может выбрать файл для загрузки, и контроллер, где будут обрабатываться загруженные файлы.

В файле представления нам нужно создать входной файл, добавив следующую строку кода.

Form::file('file_name');

В Form :: open () нам нужно добавить ‘files’ => ‘true’, как показано ниже. Это облегчает загрузку формы из нескольких частей.

Form::open(array('url' => '/uploadfile','files'=>'true'));

пример

Шаг 1 — Создайте файл представления с именем resources / views / uploadfile.php и скопируйте следующий код в этот файл.

ресурсы / виды / uploadfile.php

<html>
   <body>
      <?php
         echo Form::open(array('url' => '/uploadfile','files'=>'true'));
         echo 'Select the file to upload.';
         echo Form::file('image');
         echo Form::submit('Upload File');
         echo Form::close();
      ?>
   </body>
</html>

Шаг 2 — Создайте контроллер с именем UploadFileController , выполнив следующую команду.

php artisan make:controller UploadFileController --plain

Шаг 3 — После успешного выполнения вы получите следующий вывод —

UploadFileController

Шаг 4 — Скопируйте следующий код в

Файл app / Http / Controllers / UploadFileController.php .

приложение / Http / Контроллеры / UploadFileController.php

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use App\Http\Requests;
use App\Http\Controllers\Controller;

class UploadFileController extends Controller {
   public function index() {
      return view('uploadfile');
   }
   public function showUploadFile(Request $request) {
      $file = $request->file('image');
   
      //Display File Name
      echo 'File Name: '.$file->getClientOriginalName();
      echo '<br>';
   
      //Display File Extension
      echo 'File Extension: '.$file->getClientOriginalExtension();
      echo '<br>';
   
      //Display File Real Path
      echo 'File Real Path: '.$file->getRealPath();
      echo '<br>';
   
      //Display File Size
      echo 'File Size: '.$file->getSize();
      echo '<br>';
   
      //Display File Mime Type
      echo 'File Mime Type: '.$file->getMimeType();
   
      //Move Uploaded File
      $destinationPath = 'uploads';
      $file->move($destinationPath,$file->getClientOriginalName());
   }
}

Шаг 5 — Добавьте следующие строки в app / Http / rout.php .

приложение / Http / routes.php

Route::get('/uploadfile','UploadFileController@index');
Route::post('/uploadfile','UploadFileController@showUploadFile');

Шаг 6 — Посетите следующий URL, чтобы проверить работоспособность загружаемого файла.

http://localhost:8000/uploadfile

Шаг 7 — Вы получите приглашение, как показано на следующем рисунке.