laravel

Tutorial Koleksi Laravel

Tutorial Koleksi Laravel
Koleksi Laravel adalah fitur yang berguna dari kerangka Laravel. Koleksi berfungsi seperti array PHP, tetapi lebih nyaman. Kelas koleksi terletak di Illuminate\Support\Collection lokasi. Koleksi memungkinkan Anda membuat rantai metode untuk memetakan atau mengurangi array. Itu tidak dapat diubah, dan koleksi baru kembali ketika metode pengumpulan dipanggil. Ini adalah pembungkus API untuk fungsi array PHP dan koleksi dapat dihasilkan dari array. Tutorial ini menunjukkan cara membuat dan menggunakan koleksi di proyek Laravel apa pun any.

Prasyarat

Anda harus membuat proyek Laravel sebelum memulai tutorial ini. Anda juga harus memiliki pengetahuan dasar tentang pengontrol dan perutean.

Buat Koleksi

Buat pengontrol bernama KoleksiController dan tulis kode yang diperlukan untuk membuat koleksi baru di dalam pengontrol. Jalankan perintah berikut untuk membuat controller.

$ php artisan make:controller CollectionController

Anda dapat membuat koleksi menggunakan kelas koleksi atau metode collect(). Kedua cara ditunjukkan di bawah ini. Tambahkan baris berikut di bagian atas KoleksiController kelas untuk menggunakan koleksi kelas.

//Tambahkan kelas koleksi
gunakan Illuminate\Support\Collection;

SEBUAH. Buat Koleksi Menggunakan Kelas

Buat koleksi_kelas() metode dengan kode berikut di dalam KoleksiKontroler. Di sini, kumpulan angka dibuat dengan kelas koleksi. Saat metode ini dipanggil, nilai variabel koleksi akan ditampilkan di browser.

fungsi publik collection_class()
//Buat koleksi baru menggunakan kelas Koleksi
$collection1 = Koleksi baru([67,34,89,56,23]);
// buang konten variabel di browser
dd($koleksi1);

Tambahkan rute berikut di rute\web.php file untuk memanggil koleksi_kelas().

Route::get('collect1', '[email protected]_class');

Masukkan URL berikut di browser untuk memeriksa output.

http://localhost:8000/collect1

Output berikut akan muncul setelah menjalankan URL. Lima nomor koleksi dicetak di sini.

B. Buat Koleksi Menggunakan Metode

Koleksi juga dapat dibuat menggunakan mengumpulkan() metode. Tambahkan berikut ini kumpulkan_metode() di dalam KoleksiController untuk membuat kumpulan string menggunakan mengumpulkan() metode. Saat metode ini dipanggil, nilai dari variabel koleksi akan ditampilkan di browser, seperti sebelumnya.

fungsi publik collect_method()
//Buat koleksi baru menggunakan metode kumpulkan
$collection2 = collect(["Bagus", "Lebih Baik", "Terbaik"]);
// buang konten variabel di browser
dd($koleksi2);

Tambahkan rute berikut di rute\web.php file untuk memanggil kumpulkan_metode().

Route::get('collect2', '[email protected]_method');

Masukkan URL berikut di browser untuk memeriksa output.

http://localhost:8000/collect2

Output berikut akan muncul setelah menjalankan URL. Tiga nilai string dari koleksi dicetak di sini.

Cari Data di Koleksi

Data dapat dicari dari koleksi dengan berbagai cara. Tambahkan kode berikut di dalam KoleksiController. Dua jenis pencarian ditampilkan dalam kode. Pertama, kumpulan pelanggan didefinisikan, dan mengandung() metode yang digunakan untuk mencari pelanggan bernama 'Janifer.' Selanjutnya, kumpulan array multi-dimensi didefinisikan, dan dimana() metode ini digunakan untuk dua jenis pencarian dalam koleksi. Pertama dimana() metode yang digunakan untuk mencari informasi, dimana Indo kunci berisi nilai '011176645.' Kedua dimana() Metode yang digunakan untuk mencari informasi dimana tanda dari CSE409 aku s 88.

fungsi publik search_data()

//Deklarasikan koleksi
$pelanggan = kumpulkan([['id' => '894673', 'nama' => 'Rahman', 'email' => '[email dilindungi]'],
['id' => '454886', 'name' => 'Janifer', 'email' => '[email protected]'],
['id' => '306007', 'name' => 'Micheal', 'email' => '[email protected]']]);
//Cari menggunakan metode berisi
if ($pelanggan->berisi('nama', 'Janifer'))

echo "Janifer ada di daftar pelanggan.
";

//Deklarasikan koleksi lain
$tanda = kumpulkan([
['ID' => '011176644', 'tanda' => ['CSE401' => 87, 'CSE409' => 88]],
['ID' => '011176645', 'tanda' => ['CSE402' => 69, 'CSE409' => 75]],
]);
//Cari menggunakan metode where
echo $marks->where('ID', '011176645')."
";
echo $tanda->dimana('tanda.CSE409', 88);

Tambahkan rute berikut di rute\web.php file untuk memanggil pencarian_data().

Rute::get('src_collection', '[email protected]_data');

Masukkan URL berikut di browser untuk memeriksa output.

http://localhost:8000/src_collection

Output berikut akan muncul setelah menjalankan URL.

Filter Koleksi Data

Itu Saring() metode yang digunakan untuk menyaring data dari koleksi. Tambahkan kode berikut di KoleksiController. Sebuah koleksi dari produk didefinisikan dalam kode yang berisi nama produk dan harga. Itu Saring() metode yang digunakan untuk menyaring data dari kumpulan yang harga nilainya lebih besar dari 4000. Kumpulan data yang difilter diubah menjadi larik dan dicetak oleh untuk lingkaran.

fungsi publik filter_data()

//Deklarasikan koleksi
$produk = kumpulkan([
['produk' => 'HDD', 'harga' => 6000],
['produk' => 'Mouse', 'harga' => 500],
['produk' => 'Monitor', 'harga' => 5000],
['produk' => 'Printer', 'harga' => 4000],
]);
//Buat daftar lain setelah memfilter data berdasarkan nilai harga
$filter_price = $produk->filter(fungsi ($item)
kembalikan data_get($item, 'harga') > 4000;
);
//Baca semua data sebagai array dari koleksi baru
$filtered = $filter_price->all();
// Iterasi nilai array menggunakan loop
foreach($difilter sebagai $nilai)

gema "Nama:".$nilai['produk'].","."Harga: ".$nilai['harga']."
";

Tambahkan rute berikut di rute\web.php file untuk memanggil filter_data().

Rute::get('filter_collection', '[email protected]_data');

Masukkan URL berikut di browser untuk memeriksa output.

http://localhost:8000/filter_collection

Output berikut akan muncul setelah menjalankan URL.

Urutkan Koleksi Data

Berbagai menyortir metode yang ada di Laravel untuk mengurutkan pengumpulan data. Tambahkan kode berikut di KoleksiController. Koleksi buku didefinisikan dalam kode. Itu Sortir dengan() metode yang digunakan untuk mengurutkan kumpulan data berdasarkan kunci 'penulis.' Kemudian, nilai dari variabel koleksi yang diurutkan akan dicetak di browser.

fungsi publik sort_data()
//Deklarasikan koleksi
$buku = kumpulkan([
['name' => 'Buku Masak Python: Resep Menguasai Python 3',
'penulis' => 'David Beazley'],
['name' => 'Belajar Python dalam 1 Hari: Panduan Lengkap Python dengan Contoh',
'penulis' => 'Krishna Rungta'],
['name' => 'Pemrograman Python: Pengantar Ilmu Komputer',
'penulis' => 'John M. Zelle'],
['name' => 'Referensi Saku Python 5ed: Python di Saku Anda',
'penulis' => 'Mark Lutz']
]);
//Mengurutkan kumpulan data berdasarkan nama pengarang
$sortedBuku = $buku->sortBy('penulis');
// buang konten variabel di browser
dd($sortedBook->values()->toArray());

Tambahkan rute berikut di rute\web.php file untuk memanggil sort_data().

Rute::get('sort_collection', '[email protected]_data');

Masukkan URL berikut di browser untuk memeriksa output.

http://localhost:8000/sort_collection

Output berikut akan muncul setelah menjalankan URL.

Data Pengumpulan Irisan

Bagian tertentu dapat dipotong dari koleksi menggunakan mengambil() metode. Tambahkan kode berikut di KoleksiController. Itu mengambil() metode yang digunakan dalam kode untuk membuat daftar baru dengan memotong tiga item pertama dari koleksi. Selanjutnya, untuk loop mencetak nilai dari koleksi baru.

fungsi publik slice_data()
//Deklarasikan koleksi
$bahasa = kumpulkan(['PHP', 'Bash', 'Python', 'Java', 'C#', 'C++']);
// Ambil tiga data pertama
$slice = $bahasa->ambil(3);
// Iterasi nilai koleksi
foreach($slice sebagai $nilai)

gema $nilai." ";

Tambahkan rute berikut di rute\web.php file untuk memanggil irisan_data().

Rute::get('slice_collection', '[email protected]_data');

Masukkan URL berikut di browser untuk memeriksa output.

http://localhost:8000/slice_collection

Output berikut akan muncul setelah menjalankan URL.

Temukan Perbedaan Antara Dua Koleksi

Itu perbedaan() metode yang digunakan untuk mencari nilai dari koleksi pertama yang tidak ada di koleksi kedua. Tambahkan kode berikut di CollectionController. Dua variabel koleksi didefinisikan di sini. Itu perbedaan() metode menghasilkan koleksi baru setelah mengambil nilai dari daftar1 yang tidak ada di daftar2.

fungsi publik find_diff()
//deklarasikan dua koleksi
$list1 = collect(['Notebook', 'Pen', 'Sharpner', 'Scale', 'Pensil']);
$list2 = collect(['Pensil', 'Pensil Warna', 'Kertas Warna','Pulpen']);
//Temukan data mana yang ada di list1 tapi tidak ada di list2
$newList = $list1->diff($list2);
// buang konten variabel di browser
dd($daftarbaru);

Tambahkan rute berikut di rute\web.php file untuk memanggil temukan_diff().

Rute::get('diff_collection', '[email protected]_diff');

Masukkan URL berikut di browser untuk memeriksa output.

http://localhost:8000/diff_collection

Output berikut akan muncul setelah menjalankan URL.

Data Koleksi Balik

Itu Balik() metode yang digunakan untuk membuat kunci ke nilai dan nilai ke kunci koleksi. Tambahkan kode berikut di CollectionController untuk memeriksa fungsi dari Balik() metode. Kumpulan tiga item didefinisikan dalam kode. Itu Balik() metode diterapkan pada koleksi dan output dari of Balik() metode dicetak dengan menggunakan DD() metode.

fungsi publik flip_data()
//deklarasikan koleksi
$produk = kumpulkan(['nama' => 'Samsung A40','merek' => 'Samsung','harga' => '$300']);
// buang konten variabel di browser
dd($produk->balik());

Tambahkan rute berikut di rute\web.php file untuk memanggil flip_data().

Rute::get('flip_collection', '[email protected]_data');

Masukkan URL berikut di browser untuk memeriksa output.

http://localhost:8000/flip_collection

Output berikut akan muncul setelah menjalankan URL.

Ambil Koleksinya

Itu Dapatkan() metode yang digunakan untuk membaca nilai kunci tertentu dari koleksi. Tambahkan kode berikut di KoleksiController. Nilai dari 'nama' kunci diambil dalam kode dengan menggunakan Dapatkan() metode.

Fungsi publik retrieve_data()
//deklarasikan koleksi
$produk = kumpulkan(['nama' => 'Samsung A40','merek' => 'Samsung','harga' => '$300']);
dd($produk->get('nama'));

Tambahkan rute berikut di rute\web.php file untuk memanggil ambil_data().

Route::get('read_collection', '[email protected]_data');

Masukkan URL berikut di browser untuk memeriksa output.

http://localhost:8000/read_collection

Output berikut akan muncul setelah menjalankan URL.

Data Pengumpulan Grup

Itu grupDengan() metode yang digunakan untuk membuat koleksi baru dari koleksi lain dengan mengelompokkan berdasarkan nilai kunci tertentu. Tambahkan kode berikut di dalam KoleksiController. Itu grupDengan() metode yang digunakan di sini untuk mengembalikan koleksi baru dengan mengelompokkan nilai berdasarkan 'April' kunci.

fungsi publik grup_data()

fungsi publik group_data()
$jual = kumpulkan([
['Jan' => 100000],
['Mar' => 500.000],
['Apr' => 600000],
['Jan' => 450000],
['Jun' => 230000],
['Agustus' => 600000],
['Sep' => 789333],
['Jul' => 452000],
['Jan' => 700000],
['Apr' => 490000],
['Jun' => 670000],
['Apr' => 560000]
]);
dd($penjualan->groupBy('Apr'));

Tambahkan rute berikut di rute\web.php file untuk memanggil grup_data().

Rute::get('group_collection', '[email protected]_data');

Masukkan URL berikut di browser untuk memeriksa output.

http://localhost:8000/group_collection

Output berikut akan muncul setelah menjalankan URL.

Gabungkan Data Koleksi

Itu meledak() metode yang digunakan untuk menggabungkan nilai kunci tertentu dari koleksi from. Tambahkan kode berikut di dalam KoleksiController. Itu meledak() metode yang digunakan di sini untuk menggabungkan nilai-nilai nama kunci koleksi dengan spasi.

fungsi publik join_data()
//Deklarasikan koleksi
$pelanggan = kumpulkan([['id' => '894673', 'nama' => 'Rahman', 'email' => '[email dilindungi]'],
['id' => '454886', 'name' => 'Janifer', 'email' => '[email protected]'],
['id' => '306007', 'name' => 'Micheal', 'email' => '[email protected]']]);
//Gabungkan dan cetak nilainya
dd($pelanggan->implode('nama', "));

Tambahkan rute berikut di rute\web.php file untuk memanggil gabung_data().

Rute::get('join_collection', '[email protected]_data');

Masukkan URL berikut di browser untuk memeriksa output.

http://localhost:8000/join_collection

Output berikut akan muncul setelah menjalankan URL.

Baca Kunci Koleksi

Itu kunci() metode yang digunakan untuk membuat koleksi baru dengan semua kunci dari koleksi lain. Tambahkan kode berikut di dalam KoleksiController. Koleksi yang didefinisikan dalam kode berisi berbagai tipe data sebagai item, seperti nilai dengan indeks numerik, nilai dengan kunci, dan larik lainnya.

fungsi publik read_keys()
//Deklarasikan koleksi
$campuran data = kumpulkan([
['situs web' => 'google.com', 'type' => 'mesin pencari'],'language' => 'PHP',
1234, 'name' => 'Fahmida','game' => 'PUBG','color' =>'blue']);
//Cetak koleksi baru yang dihasilkan oleh metode keys()
dd($mixdata->keys());

Tambahkan rute berikut di rute\web.php file untuk memanggil baca_keys().

Rute::get('key_collection', '[email protected]_keys');

Masukkan URL berikut di browser untuk memeriksa output.

http://localhost:8000/key_collection

Output berikut akan muncul setelah menjalankan URL.

Kesimpulan

Koleksi Laravel memungkinkan Anda melakukan berbagai jenis tugas dengan data, seperti array PHP PHP. Beberapa metode Laravel Collection yang berguna dijelaskan dalam tutorial ini dengan menggunakan kode yang sangat sederhana. Eloquent ORM adalah penggunaan lain dari koleksi di Laravel yang tidak tercakup dalam tutorial ini. Salah satu batasan utama dari kelas koleksi adalah ia menghasilkan koleksi baru setiap kali metode dipanggil karena tidak dapat diubah. Setelah membaca tutorial ini, pembaca seharusnya mengetahui beberapa kegunaan dasar dari koleksi Laravel.

Emulator Konsol Game Terbaik untuk Linux
Artikel ini akan mencantumkan perangkat lunak emulasi konsol game populer yang tersedia untuk Linux. Emulasi adalah lapisan kompatibilitas perangkat l...
Distro Linux Terbaik untuk Gaming pada tahun 2021
Sistem operasi Linux telah berkembang jauh dari tampilan aslinya, sederhana, berbasis server. OS ini telah sangat meningkat dalam beberapa tahun terak...
Cara merekam dan streaming sesi permainan Anda di Linux
Dulu, bermain game hanya dianggap sebagai hobi, namun seiring berjalannya waktu, industri game mengalami pertumbuhan yang sangat pesat baik dari segi ...