Dalam posting ini, saya ingin menunjukkan penggunaan perpustakaan PhpSpreadsheet dalam proyek CodeIgniter 3 Anda. PhpSpreadsheet adalah pustaka PHP murni untuk membaca dan menulis file spreadsheet Show
Posting Serupa Berikut langkah-langkah generate Excel pada aplikasi CodeIgniter 3 dengan PhpSpreadsheet Langkah 1. Unduh dan instal CodeIgniter Langkah 2. Jalankan perintah komposer di bawah ini untuk mengunduh
Berikut adalah struktur direktori saya setelah menginstal phpoffice/phpspreadsheet Langkah 3. Buka file _Langkah 4. Gunakan
Untuk informasi lebih lanjut, berikut adalah halaman dokumentasi resmi dari – dokumentasi phpspreadsheet Saya harap Anda menyukai Posting ini, Silakan berkomentar di bawah ini, saran dan masalah Anda jika Anda hadapi - kami di sini untuk menyelesaikan masalah Anda Codeigniter 3 - PHPSpreadsheetCodeigniter 3 Impor & Ekspor Excel menggunakan PHPSpreadsheet KeteranganJenis fitur sampel
Cara Penggunaan
Sumber daya
Menggunakan file Excel dan CSV Anda dapat menyimpan semua data dan mengimpor data file Excel dan CSV ke dalam database sekaligus menggunakan library PhpSpreadsheet di CodeIgniter dan MySQL. PhpSpreadsheet adalah library PHP untuk membaca dan menulis file spreadsheet. Impor Excel dan CSV ke bantuan MySQL untuk menghemat waktu pengguna dan menghindari pekerjaan berulang Dalam tutorial ini bagaimana menjelaskan Import Data ke file Excel dan CSV menggunakan library PhpSpreadsheet di CodeIgniter dan MySQL. Karena PHPExcel sudah tidak digunakan lagi, maka kami akan menggunakan PhpSpreadsheet untuk membuat file excel dengan data koleksi. Kami akan membahas tutorial ini dengan demo langsung untuk Mengimpor Data ke file Excel dan CSV menggunakan pustaka PhpSpreadsheet di CodeIgniter dan MySQL Baca juga. Cara menggunakan PHPExcel dengan CodeIgniter Langkah 1. Unduh dan instal CodeIgniter Langkah 2. komposer atau unduhan langsung Jalankan perintah komposer di bawah ini untuk mengunduh pustaka phpspreadsheet dari folder proyek Anda. Itu akan membuat folder baru bernama "vendor" dan itu akan mengunduh pustaka phpoffice/phpspreadsheet
3. Siapkan Pemuatan Otomatis Komposer Anda perlu menyetel jalur direktori vendor di dalam 1 2 3 $config['composer_autoload'] = 'vendor/autoload.php'; ?> Sebelum mulai mengimplementasikan impor data ke file excel dan csv menggunakan library PhpSpreadsheet di CodeIgniter dan MySQL, lihat struktur file
Langkah 4. Membuat Database dan Tabel MySQL SQL berikut membuat tabel pelanggan di database MySQL 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 BUAT TABEL `impor` ( `id` int(11) NOT NULL, `nama_pertama` varchar(100) NOT NULL, `nama_belakang` varchar(100) NOT NULL, `email` varchar(255) NOT NULL, `dob` varchar(20) NOT NULL, `contact_no` varchar(16) NOT NULL ) ENGINE = InnoDB DEFAULT CHARSET=latin1;
UBAH TABEL `impor` TAMBAHKAN UTAMA KUNCI (`id`);
UBAH TABEL `impor` MODIFIKASI `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=1; ?> Langkah 5. Model Situs menangani database Buat file bernama Situs. php di dalam “folder aplikasi/model 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 /* * Untuk mengubah tajuk lisensi ini, pilih Tajuk Lisensi di Properti Proyek * Untuk mengubah file template ini, pilih Tools. Templat * dan buka templat di editor */
/** * Deskripsi Model Impor * * @author Tim Mag Coders * * @email info@techarise. com */ jika (. ditentukan('BASEPATH')) keluar('Tidak ada akses skrip langsung yang diizinkan');
class Situs meluas CI_Model { pribadi $_batchImport; fungsi publik setBatchImport($batchImport) { $ini - >_batchImport = $batchImport; } // menyimpan data fungsi publik importData() { $data = $ini - >_batchImport; $ini - >db->insert_batch('import', $data); } // dapatkan daftar karyawan fungsi publik daftar karyawan() { $ini - >db->select(array('e.id', 'e. first_name', 'e. last_name', 'e. email', 'e. dob', 'e. contact_no')); $ini - >db->from('import as e'); $query = $this - >db->get(); return $query - >result_array(); } }
?> Langkah 6. Buat Pengontrol dan muat kelas Buat pengontrol bernama Phpspreadsheet. php dan gunakan pustaka phpspreadsheet di dalam pengontrol. Silakan temukan di bawah kode untuk pengontrol 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 /** * @paket Phpspreadsheet. Phpspreadsheet * Tim TechArise @penulis * * @email info@techarise. com * * Deskripsi Pengontrol Phpspreadsheet */
ditentukan('BASEPATH') ATAU exit('No direct script access allowed'); //PhpSpreadsheet gunakan PhpOffice\PhpSpreadsheet\Spreadsheet;
class Phpspreadsheet meluas CI_Controller {
fungsi publik __construct() { orang tua. . __konstruksi(); // memuat model $ini - >memuat->model('Site', 'site'); } // indeks fungsi publik impor() { $data = array(); $data['title'] = 'Import Excel Sheet | TechArise'; $data['breadcrumbs'] = array('Home' => '#'); $ini - >memuat->view('spreadsheet/index', $data); }
// fungsi upload file fungsi publik unggah() { $data = array(); $data['title'] = 'Import Excel Sheet | TechArise'; $data['breadcrumbs'] = array('Home' => '#'); // Memuat pustaka validasi formulir $ini - >memuat->library('form_validation'); $this - >form_validation->set_rules('fileURL', 'Upload File', 'callback_checkFileValidation'); jika($ini - >form_validation->run() == false) {
$ini - >memuat->view('spreadsheet/index', $data); } lain { // Jika file diunggah jika(. kosong($_FILES['fileURL']['name'])) { // dapatkan ekstensi file $ekstensi = pathinfo($_FILES['fileURL']['name'], PATHINFO_EXTENSION);
jika($ekstensi == 'csv'){ $reader = baru \PhpOffice\PhpSpreadsheet\Reader\Csv(); } elseif($ekstensi == 'xlsx') { $reader = baru \PhpOffice\PhpSpreadsheet\Reader\Xlsx(); } lain { $reader = baru \PhpOffice\PhpSpreadsheet\Reader\Xls(); } // jalur file $spreadsheet = $reader - >load($_FILES['fileURL']['tmp_name']); $allDataInSheet = $spreadsheet - >getActiveSheet()->toArray(null, true, true, true);
// jumlah larik $arrayCount = hitung($allDataInSheet); $flag = 0; $createArray = array('First_Name', 'Last_Name', 'Email', 'DOB', 'Contact_No'); $makeArray = array('First_Name' => 'First_Name', 'Last_Name' => 'Last_Name', 'Email' => 'Email', 'DOB' => 'DOB', 'Contact_No' => 'Contact_No'); $SheetDataKey = array(); foreach ($allDataInSheet as $dataInSheet) { foreach ($dataInSheet as $key => $value) { if (in_array(trim($value), $createArray)) { $nilai = preg_replace('/\s+/', '', $value); $SheetDataKey[trim($value)] = $key; } } } $dataDiff = array_diff_key($makeArray, $SheetDataKey); jika (kosong($dataDiff)) { $flag = 1; } // cocok dengan kolom lembar excel jika ($bendera == 1) { untuk ($i = 2; $i <= $arrayCount; $i++) { $addresses = array(); $firstName = $SheetDataKey['First_Name']; $lastName = $SheetDataKey['Last_Name']; $email = $SheetDataKey['Email']; $dob = $SheetDataKey['DOB']; $contactNo = $SheetDataKey['Contact_No'];
$firstName = filter_var(trim($allDataInSheet[$i][$firstName]), FILTER_SANITIZE_STRING); $lastName = filter_var(trim($allDataInSheet[$i][$lastName]), FILTER_SANITIZE_STRING); $email = filter_var(trim($allDataInSheet[$i][$email]), FILTER_SANITIZE_EMAIL); $dob = filter_var(trim($allDataInSheet[$i][$dob]), FILTER_SANITIZE_STRING); $contactNo = filter_var(trim($allDataInSheet[$i][$contactNo]), FILTER_SANITIZE_STRING); $fetchData[] = array('first_name' => $firstName, 'last_name' => $lastName, 'email' => $email, 'dob' => $dob, 'contact_no' => $contactNo); } $data['dataInfo'] = $fetchData; $ini - >situs->setBatchImport($fetchData); $ini - >situs->importData(); } lain { echo "Harap impor file yang benar, tidak cocok dengan kolom lembar excel"; } $ini - >memuat->view('spreadsheet/display', $data); } } }
// checkFileValidation fungsi publik periksaValidasi File($string) { $file_mimes = array('text/x-comma-separated-values', 'text/comma-separated-values', 'application/octet-stream', 'aplikasi/vnd. ms-excel', 'aplikasi/x-csv', 'text/x-csv', 'text/csv', 'application/csv', 'aplikasi/excel', 'aplikasi/vnd. msexcel', 'teks/polos', 'aplikasi/vnd. openxmlformats-officedocument. spreadsheetml. lembar' ); jika(ada($_FILES['fileURL']['name'])) { $arr_file = meledak('.', $_FILES['fileURL']['name']); $ekstensi = end($arr_file); if(($ekstensi == 'xlsx' |. $extension == 'xls' . . $extension == 'csv') && in_array($_FILES['fileURL']['type'], $file_mimes)){ kembali benar; }lain{ $this - >form_validation->set_message('checkFileValidation', 'Please choose correct file.'); return false; } }lain{ $this - >form_validation->set_message('checkFileValidation', 'Please choose a file.'); kembalikan false; } }
}
?> Langkah 7. Buat Tampilan Buat tampilan bernama index. php di dalam direktori application/views. Silakan temukan kode untuk file tampilan 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 ?php $ini - >load->view('templates/header');?> <. -- wadah -- > <bagian kelas = "showcase"> <div kelas = "container"> <div kelas = "pb-2 mt-4 mb-2 border-bottom"> <h2>Impor Data to Excel and CSV file using PhpSpreadsheet library in CodeIgniter and MySQL</h2> < / div>
?php if(form_error('fileURL')) {?> <div kelas = "alert alert-danger alert-dismissible"> <tombol ketik = "button" class="close" data-dismiss="alert">×</button> ?php cetak form_error('fileURL'); ?> < / div> ?php } ?> <div kelas = "row padall border-bottom"> <div kelas = "col-lg-12"> <div kelas = "float-right"> <a href = " print site_url();?>assets/uploads/sample-xlsx.xlsx" kelas = "btn btn-info btn-sm"> . <i class="fa fa-file-excel"></i> Sample .XLSX< / a> <a href = " print site_url();?>assets/uploads/sample-xls.xls" kelas = "btn btn-info btn-sm"> . <i class="fa fa-file-excel"></i> Sample .XLS< / a> <a href = " print site_url();?>assets/uploads/sample-csv.csv" kelas = "btn btn-info btn-sm" target . ="_blank" ><i class="fa fa-file-csv"></i> Sample .CSV< / a> < / div> < / div> < / div>
<bentuk tindakan = " print site_url();?>phpspreadsheet/upload" class="excel-upl" id="excel-upl" enctype="multipart/form-data" method="post" accept-charset="utf-8"> <div kelas = "row padall"> <div kelas = "col-lg-6 order-lg-1">
<masukkan ketik = "file" class="custom-file-input" id="validatedCustomFile" name="fileURL"> <label kelas = "custom-file-label" for="validatedCustomFile">Choose file.. . < / label> < / div> <div kelas = "col-lg-6 order-lg-2"> <tombol ketik = "submit" name="import" class="float-right btn btn-primary">Import</button> < / div> < / div> < / bentuk> < / div> < / bagian> $ini->memuat< $this->load->view('templates/footer');?> Langkah 8. Buat Tampilan Buat tampilan bernama tampilan. php di dalam direktori application/views. Silakan temukan kode untuk file tampilan Bagaimana cara mengimpor file Excel di CodeIgniter 3?Impor Codeigniter Excel, File CSV . Unduh Codeigniter Terbaru Konfigurasi Dasar Unduh Perpustakaan phpExcel Buat Perpustakaan Buat Database Dengan Tabel Siapkan Kredensial Database Buat Pengontrol Baru Buat model Bagaimana cara mengunduh pustaka PhpSpreadsheet?Gunakan komposer untuk menginstal PhpSpreadsheet ke dalam proyek Anda . Atau unduh juga dokumentasi dan sampel jika Anda berencana untuk menggunakannya. Cara yang baik untuk memulai adalah menjalankan beberapa sampel. Jangan lupa mengunduhnya melalui flag --prefer-source composer.
Bagaimana cara mengimpor data dari Excel ke codeigniter 4?Codeigniter 4 Mengimpor Data File Excel/CSV ke Contoh Database MySQL . Langkah 1. Unduh Proyek Codeigniter Langkah 2. Konfigurasikan Penanganan Kesalahan Langkah 3. Hasilkan Tabel Pengguna di Database Langkah 4. Terhubung ke Basis Data Langkah 5. Buat Contoh File CSV Langkah 6. Buat Model Langkah 7. Atur Pengontrol Langkah 8. Mengatur Rute Bagaimana cara mengimpor data dari Excel csv ke database mysql di PHP menggunakan penyisipan dan pembaruan PhpSpreadsheet?php gunakan Phppot\DataSource; . php'; . /vendor/muat otomatis. php'); . ms-excel', 'teks/xls', 'teks/xlsx', 'aplikasi/vnd |