2 tahun lalu
Pelajari cara mengekspor data dalam format Excel atau CSV dengan Laravel Excel
☑ Laravel excel beberapa contoh ekspor lembar
☑ Ekspor data besar
☑ Tampilkan logo di lembar excel
☑ memformat sel di excel (mis. bold, border, warna, dll)
Tautan
https. // www. Youtube. com/watch?v=VUet2wq22-o
DAPATKAN KURSUS PEMROGRAMAN GRATIS
Dapatkan tutorial & gratis Laravel yang bermanfaat ke kotak masuk Anda
Posting ini dikirimkan oleh anggota kami. Kirim postingan baru
Topik. PHP Laravel
Tag. Tutorial
Ada beberapa keanehan dengan pengimporan Banyak Lembar yang dapat diselesaikan dengan Laravel Excel. Jika pembuatnya mengubah formatnya, tentu saja Anda kurang beruntung, dan harus melakukan perubahan pada kode Anda. Namun, ada beberapa hal lagi yang mungkin bermanfaat untuk dipahami, seperti
- membuat impor tertentu tetapi hanya menggunakan beberapa di antaranya
- dan memahami bagaimana menangani formula
Kami akan membahas Memuat Lembar Bersyarat di artikel ini dan menangani rumus di artikel berikutnya
Laravel-Excel — P3. Mengimpor Banyak Lembar dan Menangani Lembar yang Ditentukan Tidak Dikenal
Idealnya Anda menerima lembar Excel yang diformat dengan benar dan itu sangat mudah saat membuat impor Anda…
blog. devgenius. io
Menggunakan Importir TertentuAnda mungkin memiliki lembar excel dengan beberapa lembar yang semuanya harus diimpor. Jadi, Anda menghabiskan waktu yang diperlukan untuk membuat kode yang diperlukan untuk mengimpor setiap lembar. Segalanya tampak bekerja dengan baik. Namun, apa yang terjadi jika data hanya berubah pada satu lembar?
Pertama, mari tinjau importir kita yang menentukan impor untuk semua sheet kita
Importir ini mengharapkan tiga lembar berbeda untuk dimuat, user_data_1, user_data_2, dan user_data_3
Jika ada perubahan hanya pada user_data_1, kami dapat menentukan untuk hanya menggunakan yang itu. Perlu ada beberapa modifikasi pada kode kita. Pertama, kita perlu menggunakan sifat WithConditionalSheets_ di importir kita. Selanjutnya, kita perlu mengganti metode sheets() kita dengan metode conditionalSheets() yang diperlukan
Mari buat rute kita dan tambahkan metode ke UserController kita untuk memanggil importir
Jika Anda telah mengikuti artikel sebelumnya, Anda akan melihat perbedaan dalam argumen pertama untuk metode Excel::import. Kami perlu menentukan bahwa kali ini kami hanya akan menggunakan sheet tertentu. Dalam contoh ini, kami menyatakan bahwa kami hanya ingin lembar user_data_1 untuk diteruskan, tetapi kami dapat menentukan beberapa lembar seperti ini. user_data_11
Juga, Anda bisa menulis contoh berikut seperti ini
$import = new MultiSheetSelectSpecificSheet();$import->onlySheets('user_data_1');Excel::import($import, 'mock_data/MOCK_DATA_3.xlsx');
Semua baik untuk pergi pada akhir saya. Semoga semuanya berfungsi dengan baik pada Anda juga
GitHub - dinocajic/package-laravel-excel. Menampilkan contoh fungsionalitas dengan Laravel Excel
Laravel adalah framework aplikasi web dengan sintaks yang ekspresif dan elegan. Kami percaya pembangunan harus menyenangkan dan…
github. com
Dino Cajic saat ini adalah Kepala TI di LSBio (LifeSpan BioSciences, Inc. ), Antibodi Mutlak, Kerafast, Everest BioTech, Nordic MUbio, dan Exalpha. Dia juga menjabat sebagai CEO di MyAutoSystem. Dia memiliki lebih dari satu dekade pengalaman rekayasa perangkat lunak. Dia punya B. S. dalam Ilmu Komputer dan minor dalam Biologi. Latar belakangnya terdiri dari pembuatan aplikasi e-commerce tingkat perusahaan, melakukan pengembangan perangkat lunak berbasis penelitian, dan memfasilitasi penyebaran pengetahuan melalui tulisan.
Anda dapat terhubung dengannya di LinkedIn, mengikutinya di Instagram, atau berlangganan publikasi Mediumnya
Baca setiap cerita dari Dino Cajic (dan ribuan penulis lain di Medium). Biaya keanggotaan Anda secara langsung mendukung Dino Cajic dan penulis lain yang Anda baca. Anda juga akan mendapatkan akses penuh ke setiap cerita di Medium
Saya mencoba mengekspor lembar dengan banyak buku kerja dan menghasilkan setiap buku kerja dari tampilan. Saya telah membuat 5 berbeda. file blade yang berisi tabel HTML dan ingin menghasilkan setiap buku kerja dari masing-masing. berkas pisau
Saya mencoba mengekspor lembar dengan banyak buku kerja dan menghasilkan setiap buku kerja dari tampilan. Saya telah membuat 5 berbeda. file blade yang berisi tabel HTML dan ingin menghasilkan setiap buku kerja dari masing-masing. berkas pisau
from = $request['from']; $this->to = $request['to']; $this->id = $id; } public function getScansCountGroupBy($id, $field) { return Scan::where('qr_code_id', $id)->select($field, \DB::raw('count(*) as scans'))->groupBy($field)->orderBy('created_at', 'asc')->get(); } public function view(): View { $id = \Hashids::decode($this->id)[0]; $data['qrCode'] = GenerateQrCode::find($id); if ($this->from && $this->to) { $from = $this->from . ' 00:00:00'; $to = $this->to . ' 23:59:59'; $data['from'] = $this->from; $data['to'] = $this->to; } else { $from = date('Y-m-d', strtotime("-30 days")) . ' 00:00:00'; $to = date('Y-m-d') . ' 23:59:59'; $data['from'] = date('Y-m-d', strtotime("-30 days")); $data['to'] = date('Y-m-d'); } $data['scansList'] = Scan::where('qr_code_id', $id)->whereBetween('created_at', [$from, $to])->orderBy('created_at', 'desc')->get(); $data['firstScan'] = Scan::where('qr_code_id', $id)->whereBetween('created_at', [$from, $to])->first(); $data['scansDataPoints'] = []; $data['uniqueUsersDataPoints'] = []; if (!empty($data['firstScan'])) { $data['countryCount'] = Scan::where('qr_code_id', $id)->whereBetween('created_at', [$from, $to])->where('country', $data['firstScan']->country)->count(); $data['deviceCount'] = Scan::where('qr_code_id', $id)->whereBetween('created_at', [$from, $to])->where('device', $data['firstScan']->device)->count(); /* ** Countries ** Cities ** Languages */ $data['countries'] = $this->getScansCountGroupBy($id, 'country'); $data['cities'] = $this->getScansCountGroupBy($id, 'city'); $data['languages'] = $this->getScansCountGroupBy($id, 'language'); /* ** Devices ** Platforms ** Browsers */ $data['devices'] = $this->getScansCountGroupBy($id, 'device'); $data['platforms'] = $this->getScansCountGroupBy($id, 'platform'); $data['browsers'] = $this->getScansCountGroupBy($id, 'browser'); // $period = new \DatePeriod( // new \DateTime(date('Y-m-d', strtotime("-30 days"))), // new \DateInterval('P1D'), // new \DateTime(date('Y-m-d', strtotime("+1 days"))) // ); $period = new \DatePeriod( new \DateTime($from), new \DateInterval('P1D'), new \DateTime($to) ); /* ** Scans Graph */ $scans = Scan::where('qr_code_id', $id)->whereBetween('created_at', [$from, $to])->select(\DB::raw('DATE(created_at) as date'), \DB::raw('count(*) as scans'))->groupBy('date')->orderBy('created_at', 'asc')->get()->toArray(); $scansDataPoints = array(); foreach ($period as $key => $value) { $date = $value->format('Y-m-d'); $index = array_search($value->format('Y-m-d'), array_column($scans, 'date')); if ($index !== false) { $scansDataPoints[$date] = $scans[$index]['scans']; } else { $scansDataPoints[$date] = 0; } } $data['scansDataPoints'] = $scansDataPoints; /* ** Unique Users Graph */ $unique_users = Scan::where('qr_code_id', $id)->whereBetween('created_at', [$from, $to])->select(\DB::raw('DATE(created_at) as date'), \DB::raw('count(DISTINCT ip) as unique_count'))->groupBy('date')->orderBy('created_at', 'asc')->get()->toArray(); $uniqueUsersDataPoints = array(); foreach ($period as $key => $value) { $date = $value->format('Y-m-d'); $index = array_search($value->format('Y-m-d'), array_column($unique_users, 'date')); if ($index !== false) { $uniqueUsersDataPoints[$date] = $unique_users[$index]['unique_count']; } else { $uniqueUsersDataPoints[$date] = 0; } } $data['uniqueUsersDataPoints'] = $uniqueUsersDataPoints; } // $array = [ // view('frontend.dashboard.export-statistics.qrcode-countries', $data), // view('frontend.dashboard.export-statistics.qrcode-cities', $data), // ]; return $data; } public function sheets(): array { $data = $this->view(); return [ view('frontend.dashboard.export-statistics.qrcode-countries', $data), view('frontend.dashboard.export-statistics.qrcode-cities', $data), ]; } } _