@extends('layouts.public') @section('title', 'File Upload Demo') @section('page-title', 'File Upload Demo') @section('content')
use App\Services\FileService;
// Upload single file
$path = FileService::upload($request->file('file'), 'uploads', 'public');
// Upload multiple files
$paths = FileService::uploadMultiple($request->file('files'), 'uploads', 'public');
$url = FileService::url($path, 'public');
// Output: https://yourdomain.com/storage/uploads/example.jpg
return FileService::download($path, 'public');
$deleted = FileService::delete($path, 'public');
$info = FileService::info($path, 'public');
// Returns: path, url, exists, size, size_human, mime_type
// Validate file type
$isValidType = FileService::validateFileType($file, ['jpg', 'png', 'pdf']);
// Validate file size (max 5MB)
$isValidSize = FileService::validateFileSize($file, 5);
// In Controller
$path = FileService::upload($request->file('logo'), 'logos', 'public');
// Update LBB Settings
auth()->user()->lbb->settings->update(['logo_path' => $path]);
// Display in View
->user()->lbb->settings->logo_path) }})