Rumah rangka kerja php Laravel Cara menggunakan perisian tengah untuk eksport data dalam Laravel

Cara menggunakan perisian tengah untuk eksport data dalam Laravel

Nov 02, 2023 am 08:29 AM
Eksport data perisian tengah laravel

Cara menggunakan perisian tengah untuk eksport data dalam Laravel

Laravel ialah rangka kerja aplikasi web PHP yang popular yang menyediakan banyak ciri mudah untuk membangunkan aplikasi web berprestasi tinggi, berskala dan mudah diselenggara. Salah satu ciri penting ialah perisian tengah, yang boleh melakukan operasi tertentu antara permintaan dan respons. Dalam artikel ini, kami akan membincangkan cara mengeksport data ke fail Excel menggunakan perisian tengah.

  1. Buat aplikasi Laravel

Pertama, kita perlu mencipta aplikasi Laravel. Anda boleh mencipta projek Laravel baharu menggunakan komposer seperti ini:

$ composer create-project --prefer-dist laravel/laravel myapp
Salin selepas log masuk

Ini akan mencipta projek Laravel yang dipanggil myapp.

  1. Buat Pengawal

Dalam Laravel, pengawal ialah komponen teras yang mengendalikan permintaan HTTP. Kita perlu mencipta pengawal untuk mengendalikan permintaan untuk mengeksport data. Cipta pengawal menggunakan arahan berikut:

$ php artisan make:controller ExportController
Salin selepas log masuk

Ini akan mencipta pengawal baharu yang dipanggil ExportController. Dalam pengawal, kita perlu melaksanakan kaedah untuk mengendalikan permintaan eksport. Dalam contoh ini, kami akan menggunakan kaedah eksport() untuk melaksanakan operasi eksport.

  1. Cipta Middleware

Laravel middleware boleh menambah pemprosesan tambahan semasa permintaan HTTP. Kami akan mencipta perisian tengah yang dipanggil ExportMiddleware untuk mengendalikan permintaan eksport dan menyemak sama ada permintaan itu mengandungi data yang perlu dieksport.

Buat perisian tengah menggunakan arahan berikut:

$ php artisan make:middleware ExportMiddleware
Salin selepas log masuk

Ini akan mencipta perisian tengah baharu yang dipanggil ExportMiddleware. Dalam middleware, kita perlu melaksanakan kaedah handle() untuk melaksanakan operasi eksport. Dalam contoh ini, kami akan menyemak sama ada permintaan mengandungi data dan jika ya, ekstrak data daripada permintaan dan eksport ke fail Excel menggunakan perpustakaan Laravel Excel.

  1. Memasang dan Mengkonfigurasi Laravel Excel

Laravel Excel ialah pakej sambungan Laravel yang sangat popular yang menyediakan banyak kaedah mudah untuk bekerja dengan dokumen Excel. Anda boleh memasang Laravel Excel menggunakan arahan berikut:

$ composer require maatwebsite/excel
Salin selepas log masuk

Selepas pemasangan selesai, anda perlu mengkonfigurasi pembekal perkhidmatan dan alias untuk Laravel Excel. Buka fail config/app.php dan tambahkan kod berikut pada tatasusunan penyedia:

MaatwebsiteExcelExcelServiceProvider::class,
Salin selepas log masuk

Tambahkan kod berikut pada tatasusunan alias:

'Excel' => MaatwebsiteExcelFacadesExcel::class,
Salin selepas log masuk
  1. Tulis kod eksport

Kini, kami bersedia untuk menulis kod eksport. Dalam ExportMiddleware, kami akan menggunakan kod berikut untuk mengeksport data yang diekstrak daripada permintaan ke fail Excel:

use Excel;

public function handle($request, Closure $next)
{
    if (!$request->has('data')) {
        return response()->json([
            'message' => 'No data to export'
        ], 400);
    }

    $data = $request->get('data');

    return Excel::download(new ExportData($data), 'data.xlsx');
}
Salin selepas log masuk

Dalam kod, kami akan menggunakan kaedah Excel::download() untuk mengeksport data kepada dokumen Excel. Kaedah ini menerima dua parameter: kelas pengeksport data dan nama fail. Kelas pengeksport data ialah kelas yang melaksanakan antara muka FromCollection dan digunakan untuk mengeksport koleksi data ke fail Excel.

Dalam contoh ini, kami mencipta kelas pengeksport data yang dipanggil ExportData untuk mengendalikan eksport data. Berikut ialah contoh mudah kelas ExportData:

use MaatwebsiteExcelConcernsFromCollection;

class ExportData implements FromCollection
{
    protected $data;

    public function __construct($data)
    {
        $this->data = $data;
    }

    public function collection()
    {
        return collect($this->data);
    }
}
Salin selepas log masuk

Dalam kelas ini, kami menggunakan antara muka FromCollection untuk mengeksport pengumpulan data ke dalam fail Excel. Kaedah collection() mengembalikan koleksi data yang akan dieksport oleh Laravel Excel ke fail Excel.

  1. Mendaftar Middleware

Kini, kita perlu mendaftarkan middleware ke dalam aplikasi Laravel. Buka fail app/Http/Kernel.php dan tambahkan kod berikut pada tatasusunan $routeMiddleware:

'export' => AppHttpMiddlewareExportMiddleware::class,
Salin selepas log masuk
  1. Buat laluan

Akhirnya, Kita perlu membuat laluan untuk mengendalikan permintaan eksport. Buka fail route/web.php dan tambahkan kod berikut padanya:

Route::get('export', 'ExportController@export')->middleware('export');
Salin selepas log masuk
Salin selepas log masuk

Dalam laluan ini, kami mentakrifkan permintaan GET bernama eksport dan halakannya ke kaedah eksport( )ExportController. Lampirkan juga eksport middleware ke laluan ini supaya ExportMiddleware dilaksanakan sebelum permintaan mencapai pengawal Semua kerja yang diperlukan. Kami boleh menguji permintaan eksport menggunakan URL berikut:

http://localhost:8000/export?data=[{"id":1,"name":"John"},{"id":2,"name":"Jane"}]
Salin selepas log masuk
    Jika permintaan itu berjaya, anda akan menerima fail Excel bernama data.xlsx.
  1. Contoh kod penuh:

ExportMiddleware.php

<?php

namespace AppHttpMiddleware;

use Closure;
use Excel;

use MaatwebsiteExcelConcernsFromCollection;

class ExportMiddleware
{
    public function handle($request, Closure $next)
    {
        if (!$request->has('data')) {
            return response()->json([
                'message' => 'No data to export'
            ], 400);
        }

        $data = $request->get('data');

        return Excel::download(new ExportData($data), 'data.xlsx');
    }
}

class ExportData implements FromCollection
{
    protected $data;

    public function __construct($data)
    {
        $this->data = $data;
    }

    public function collection()
    {
        return collect($this->data);
    }
}
Salin selepas log masuk

ExportController.php

<?php

namespace AppHttpControllers;

class ExportController extends Controller
{
    public function export()
    {
        return response()->json([
            'message' => 'Export completed successfully'
        ]);
    }
}
Salin selepas log masuk
/web.php 🎜🎜#
Route::get('export', 'ExportController@export')->middleware('export');
Salin selepas log masuk
Salin selepas log masuk

app/Http/Kernel.php

protected $routeMiddleware = [
    ...
    'export' => AppHttpMiddlewareExportMiddleware::class,
];
Salin selepas log masuk

Ringkasan

Dalam artikel ini, kami mempelajari cara mengeksport data ke dokumen pertengahan Laravel. Kami mencipta perisian tengah baharu yang dipanggil ExportMiddleware untuk mengeksport data ke fail Excel menggunakan perpustakaan Laravel Excel dan mendaftarkan perisian tengah ini dalam aplikasi Laravel. Akhirnya, kami menguji permintaan eksport kami dan memeriksa fail Excel yang dieksport. Saya harap artikel ini berguna untuk eksport data menggunakan Laravel.

Atas ialah kandungan terperinci Cara menggunakan perisian tengah untuk eksport data dalam Laravel. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Cara Membuka Segala -galanya Di Myrise
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Antara muka ECharts dan Java: cara mengeksport dan berkongsi data carta statistik Antara muka ECharts dan Java: cara mengeksport dan berkongsi data carta statistik Dec 17, 2023 am 08:44 AM

ECharts ialah perpustakaan carta sumber terbuka yang berkuasa, fleksibel dan boleh disesuaikan yang boleh digunakan untuk visualisasi data dan paparan skrin besar. Dalam era data besar, eksport data dan fungsi perkongsian carta statistik telah menjadi semakin penting. Artikel ini akan memperkenalkan cara melaksanakan fungsi eksport dan perkongsian data carta statistik ECharts melalui antara muka Java dan menyediakan contoh kod khusus. 1. Pengenalan kepada ECharts ECharts ialah perpustakaan visualisasi data berdasarkan JavaScript dan Kanvas sumber terbuka oleh Baidu, dengan carta kaya.

Cara menggunakan vue dan Element-plus untuk mengeksport dan mencetak data Cara menggunakan vue dan Element-plus untuk mengeksport dan mencetak data Jul 18, 2023 am 09:13 AM

Cara menggunakan Vue dan ElementPlus untuk melaksanakan fungsi eksport dan cetakan data Dalam beberapa tahun kebelakangan ini, dengan perkembangan pesat pembangunan bahagian hadapan, semakin banyak aplikasi web perlu menyediakan fungsi eksport dan cetakan data untuk memenuhi keperluan pengguna yang pelbagai untuk penggunaan data. . Sebagai rangka kerja JavaScript yang popular, Vue boleh melaksanakan fungsi eksport dan pencetakan data dengan mudah apabila digunakan dengan pustaka komponen ElementPlus. Artikel ini akan memperkenalkan eksport data dan

Cara menggunakan PHP untuk mengimport dan mengeksport data ke dalam Excel Cara menggunakan PHP untuk mengimport dan mengeksport data ke dalam Excel Sep 06, 2023 am 10:06 AM

Cara menggunakan PHP untuk melaksanakan fungsi import dan eksport Excel Mengimport dan mengeksport fail Excel adalah salah satu keperluan biasa dalam pembangunan web Dengan menggunakan bahasa PHP, kita boleh melaksanakan fungsi ini dengan mudah. Dalam artikel ini, kami akan memperkenalkan cara menggunakan PHP dan perpustakaan PHPExcel untuk melaksanakan fungsi import dan eksport data ke dalam fail Excel. Pertama, kita perlu memasang perpustakaan PHPExcel. Anda boleh memuat turunnya dari laman web rasmi (https://github.com/PHPOffice/P

Pemprosesan borang PHP: eksport dan pencetakan data borang Pemprosesan borang PHP: eksport dan pencetakan data borang Aug 09, 2023 pm 03:48 PM

Pemprosesan borang PHP: eksport dan pencetakan data borang Dalam pembangunan laman web, borang adalah bahagian yang amat diperlukan. Apabila borang di tapak web diisi dan diserahkan oleh pengguna, pembangun perlu memproses data borang. Artikel ini akan memperkenalkan cara menggunakan PHP untuk memproses data borang, dan menunjukkan cara mengeksport data ke fail Excel dan mencetaknya. 1. Penyerahan borang dan pemprosesan asas Pertama, anda perlu mencipta borang HTML untuk pengguna mengisi dan menyerahkan data. Katakan kami mempunyai borang maklum balas ringkas dengan nama, e-mel dan ulasan. HTM

Cara menggunakan Vue dan Element-UI untuk melaksanakan fungsi import dan eksport data Cara menggunakan Vue dan Element-UI untuk melaksanakan fungsi import dan eksport data Jul 22, 2023 pm 01:25 PM

Cara menggunakan Vue dan Element-UI untuk melaksanakan fungsi import dan eksport data Dalam beberapa tahun kebelakangan ini, dengan pembangunan aplikasi web, fungsi import dan eksport data telah menjadi semakin penting dalam banyak projek. Menyediakan pengguna dengan fungsi import dan eksport data yang mudah bukan sahaja dapat meningkatkan pengalaman pengguna, tetapi juga meningkatkan kecekapan keseluruhan sistem. Artikel ini akan memperkenalkan cara menggunakan Vue dan Element-UI untuk melaksanakan fungsi import dan eksport data serta melampirkan contoh kod yang sepadan. 1. Kerja penyediaan Pertama, kita perlu memperkenalkan Vu ke dalam projek

Gabungan sempurna Vue dan Excel: cara mengeksport data dalam kelompok Gabungan sempurna Vue dan Excel: cara mengeksport data dalam kelompok Jul 21, 2023 pm 12:13 PM

Gabungan sempurna Vue dan Excel: Cara melaksanakan eksport kumpulan data Dalam banyak perkembangan bahagian hadapan, mengeksport data ke Excel adalah keperluan biasa. Sebagai rangka kerja JavaScript yang popular, Vue menyediakan banyak alat dan kaedah yang mudah untuk mencapai fungsi ini. Artikel ini akan memperkenalkan cara menggunakan perpustakaan Vue dan Excel.js untuk melaksanakan fungsi eksport kumpulan data. Pertama, kita perlu memasang perpustakaan Excel.js. Ia boleh dipasang menggunakan pengurus pakej npm: npminstall

Pertempuran Praktikal Golang: Perkongsian Petua Pelaksanaan untuk Fungsi Eksport Data Pertempuran Praktikal Golang: Perkongsian Petua Pelaksanaan untuk Fungsi Eksport Data Feb 29, 2024 am 09:00 AM

Fungsi eksport data adalah keperluan yang sangat biasa dalam pembangunan sebenar, terutamanya dalam senario seperti sistem pengurusan bahagian belakang atau eksport laporan data. Artikel ini akan mengambil bahasa Golang sebagai contoh untuk berkongsi kemahiran pelaksanaan fungsi eksport data dan memberikan contoh kod khusus. 1. Persediaan persekitaran Sebelum memulakan, pastikan anda telah memasang persekitaran Golang dan biasa dengan sintaks asas dan operasi Golang. Selain itu, untuk melaksanakan fungsi eksport data, anda mungkin perlu menggunakan perpustakaan pihak ketiga, seperti github.com/360EntSec

Cara mengendalikan pengecualian menggunakan perisian tengah dalam Laravel Cara mengendalikan pengecualian menggunakan perisian tengah dalam Laravel Nov 04, 2023 pm 02:26 PM

Cara menggunakan middleware untuk mengendalikan pengecualian dalam Laravel Middleware ialah konsep penting dalam rangka kerja Laravel Ia boleh melakukan satu siri operasi sebelum dan selepas permintaan sampai kepada pengawal. Selain pengesahan kebenaran biasa, pengelogan dan fungsi lain, perisian tengah juga boleh digunakan untuk mengendalikan pengecualian. Dalam artikel ini, kami akan meneroka cara menggunakan perisian tengah untuk mengendalikan pengecualian dalam Laravel dan memberikan contoh kod khusus. Pertama, kita perlu mencipta perisian tengah pengendalian pengecualian. Kelas middleware boleh dihasilkan dengan menjalankan arahan berikut:

See all articles