Export to Excel
-------------------------------------------------------------------------------- composer require maatwebsite/excel composer require maatwebsite/excel:^3.1 composer require maatwebsite/excel --ignore-platform-req=ext-zip config/app.php 'providers' => [ // ... Maatwebsite\Excel\ExcelServiceProvider::class, ], 'aliases' => [ // ... 'Excel' => Maatwebsite\Excel\Facades\Excel::class, ], php artisan vendor:publish --provider="Maatwebsite\Excel\ExcelServiceProvider" --tag=config Export-------------------------------------------------------- php artisan make:export UserExport --model=User app/exports/UserExport.php get(); } public function headings(): array{ return [ '#', 'Name', 'Email']; } } UserController.php use App\Exports\UserExport; use Maatwebsite\Excel\Facades\Excel; public function user_export(){ return Excel::download(new UserExport, 'users.xlsx'); } web.php Route::get('/user_export', [UserController::class, 'user_export']); Import-------------------------------------------------------- php artisan make:import UserImport --model=User app/imports/UserImport.php use Maatwebsite\Excel\Concerns\WithHeadingRow; class UsersImport implements ToModel, WithHeadingRow { public function model(array $row){ return new User([ 'name' => $row['name'], 'email' => $row['email'], ]); } } UserController.php use App\Imports\UserImport; use Maatwebsite\Excel\Facades\Excel; public function user_import() { Excel::import(new UserImport,request()->file('file')); return back(); } web.php Route::post('/user_import', [BlogController::class, 'user_import']);
@csrf
Import
--------------------------------------------------------------------- https://www.itsolutionstuff.com/post/laravel-9-import-export-excel-and-csv-file-tutorialexample.html composer require maatwebsite/excel composer require maatwebsite/excel:* composer.json "maatwebsite/excel": "3.1.48", composer update app.php providers Maatwebsite\Excel\ExcelServiceProvider::class, aliases 'Excel' =>Maatwebsite\Excel\Facades\Excel::class, composer dump-autoload BlogController.php orderBy('id', 'DESC')->get(); return view('welcome',compact('all_data')); } public function export(){ return Excel::download(new BlogsExport, 'bulkData.xlsx'); } } app.Exports.BlogsExport.php id, $bulk->title, $bulk->detail, Date::dateTimeToExcel($bulk->created_at), Date::dateTimeToExcel($bulk->updated_at), ]; } } ?> ---------------------------------------------------------------
Export
Route::get('/free_mcq_questions_export/{free_mcq_id}', [FreeMcqQuestionController::class, 'free_mcq_questions_export']); public function free_mcq_questions_export($free_mcq_id){ return Excel::download(new FreeMcqQuestionExport($free_mcq_id), 'questions.xlsx'); } use Illuminate\Support\Collection; { protected $free_mcq_id; public function __construct($free_mcq_id){ $this->free_mcq_id = $free_mcq_id; } public function collection() { return FreeMcqQuestion::where('free_mcq_id', $this->free_mcq_id)->select('id','free_mcq_id','question','option1','option2','option3','option4','answer','explanation')->get(); // return FreeMcqQuestion::all(); } public function headings(): array{ return [ 'ID', 'Free_Mcq_Id', 'Question', 'Option1', 'Option2', 'Option3', 'Option4', 'Answer', 'Explanation', ]; } } ------------------------------------------------------------------