Laravel — Завантаження файлів

331

Від автора: в Laravel завантаження файлів реалізується дуже просто. Все, що нам потрібно зробити, це створити файл подання, в якому користувач може вибрати файл для завантаження і контролер, в який будуть завантажуватися файли.

У файлі подання нам потрібно згенерувати елемент керування для завантаження файлу, додавши наступний рядок коду.
Form::file(‘file_name’);

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

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

Приклад

Крок 1. Створіть файл подання з ім’ям resources/views/uploadfile.php і скопіюйте цей файл наступний код.

‘/uploadfile’,’files’=>’true’));
echo ‘Select the file to upload.’;
echo Form::file(‘image’);
echo Form::submit(‘Upload File’);
echo Form::close();
?>

Крок 2 — Створіть контролер з ім’ям UploadFileController , виконавши наступну команду.

php artisan make:controller UploadFileController –plain

Крок 3 — Після виконання команди ви отримаєте наступний результат:

Laravel — Завантаження файлів

Крок 4 — Скопіювати в файл app/Http/Controllers/UploadFileController.php наступний код.

file(‘image’);
// відображаємо ім’я файлу
echo ‘File Name: ‘.$file->getClientOriginalName();
echo ‘
‘;
//відображаємо розширення файлу
echo ‘File Extension: ‘.$file->getClientOriginalExtension();
echo ‘
‘;
//відображаємо фактичний шлях до файлу
echo ‘File Real Path: ‘.$file->getRealPath();
echo ‘
‘;
//відображаємо розмір файлу
echo ‘File Size: ‘.$file->getSize();
echo ‘
‘;
//відображаємо Mime-тип файла
echo ‘File Mime Type: ‘.$file->getMimeType();
//переміщаємо завантажений файл
$destinationPath = ‘uploads’;
$file->move($destinationPath,$file->getClientOriginalName());
}
}

Крок 5 — Додайте в файл app/Http/routes.php наступні рядки.

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

Крок 6 – Перейдіть за наступним URL-адресою, щоб перевірити функцію завантаження файлів. http://localhost:8000/uploadfile

Крок 7 — Ви побачите на екрані повідомлення, як показано на наступному малюнку.

Laravel — Завантаження файлів