In this post we will see how to export CSV file in laravel, Export csv file in laravel is most common function and many time we are using this function using pluging or readymate function.
Here, i will give you example export csv file in laravel 8 without using any type plugin in laravel.So, let's see how to export csv file in laravel 8.
Step 1: Add Route
Add get method in your route file.
Route::get('/examples', 'ExampleController@exportCsv');
Step 2: In Blade File
Add export button link in your blade file from where you want to export your data
<span data-href="/examples" id="export" class="btn btn-success btn-sm" onclick ="exportTasks (event.target);">Export</span>
.
Step 3 : Add Script in JS file
Now, add below script.
<script>
function exportTasks(_this) {
let _url = $(_this).data('href');
window.location.href = _url;
}
</script>
Step 3 : Add Function in Controller
Copy below code in your controller for export csv file in laravel 8.
public function exportCsv(Request $request)
{
$fileName = 'tasks.csv';
$tasks = Task::all();
$headers = array(
"Content-type" => "text/csv",
"Content-Disposition" => "attachment; filename=$fileName",
"Pragma" => "no-cache",
"Cache-Control" => "must-revalidate, post-check=0, pre-check=0",
"Expires" => "0"
);
$columns = array('Title', 'Assign', 'Description', 'Start Date', 'Due Date');
$callback = function() use($tasks, $columns) {
$file = fopen('php://output', 'w');
fputcsv($file, $columns);
foreach ($tasks as $task) {
$row['Title'] = $task->title;
$row['Assign'] = $task->assign->name;
$row['Description'] = $task->description;
$row['Start Date'] = $task->start_at;
$row['Due Date'] = $task->end_at;
fputcsv($file, array($row['Title'], $row['Assign'], $row['Description'], $row['Start Date'], $row['Due Date']));
}
fclose($file);
};
return response()->stream($callback, 200, $headers);
}
As a developer who has been deeply immersed in the Laravel ecosystem, I've come to appreciate the power and flexibil...
Oct-30-2023
Data filtering might not sound like the most thrilling topic, but when it comes to processing large volumes of informati...
Oct-25-2023
In this article, we will see how to get multiple checkbox values in react js. In react, js click on the submit butt...
Aug-29-2022
In this article, we will see the laravel 9 subquery in where condition. You can learn how to create subquery in laravel...
Oct-11-2022