Laravel - Carregando Arquivo
Carregar arquivos no Laravel é muito fácil. Tudo o que precisamos fazer é criar um arquivo de visualização onde um usuário pode selecionar um arquivo a ser carregado e um controlador onde os arquivos carregados serão processados.
Em um arquivo de visualização, precisamos gerar uma entrada de arquivo adicionando a seguinte linha de código.
Form::file('file_name');
Em Form :: open (), precisamos adicionar ‘files’=>’true’como mostrado abaixo. Isso facilita o upload do formulário em várias partes.
Form::open(array('url' => '/uploadfile','files'=>'true'));
Exemplo
Step 1 - Crie um arquivo de visualização chamado resources/views/uploadfile.php e copie o código a seguir nesse arquivo.
resources/views/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>
Step 2 - Crie um controlador chamado UploadFileController executando o seguinte comando.
php artisan make:controller UploadFileController --plain
Step 3 - Após a execução bem-sucedida, você receberá a seguinte saída -
Step 4 - Copie o seguinte código em
app/Http/Controllers/UploadFileController.php Arquivo.
app/Http/Controllers/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());
}
}
Step 5 - Adicione as seguintes linhas em app/Http/routes.php.
app/Http/routes.php
Route::get('/uploadfile','UploadFileController@index');
Route::post('/uploadfile','UploadFileController@showUploadFile');
Step 6 - Visite o seguinte URL para testar a funcionalidade de upload do arquivo.
http://localhost:8000/uploadfile
Step 7 - Você receberá um aviso conforme mostrado na imagem a seguir.