laravel

Tutorial Koleksi Laravel

Tutorial Koleksi Laravel
Koleksi Laravel adalah ciri berguna dari kerangka Laravel. Koleksi berfungsi seperti array PHP, tetapi lebih mudah. Kelas koleksi terletak di Terangkan Koleksi \ Sokongan \ lokasi. Koleksi membolehkan anda membuat rangkaian kaedah untuk memetakan atau mengurangkan tatasusunan. Ia tidak boleh diubah, dan koleksi baru akan kembali apabila kaedah pengumpulan dipanggil. Ini adalah pembungkus API untuk fungsi array PHP dan koleksi dapat dihasilkan dari array. Tutorial ini menunjukkan kepada anda bagaimana membuat dan menggunakan koleksi di mana-mana projek Laravel.

Prasyarat

Anda mesti membuat projek Laravel sebelum memulakan tutorial ini. Anda juga mesti mempunyai pengetahuan asas mengenai pengawal dan penghalaan.

Buat Koleksi

Buat pengawal bernama Koleksi Pengawal dan tuliskan kod yang diperlukan untuk membuat koleksi baru di dalam alat kawalan. Jalankan arahan berikut untuk membuat pengawal.

$ php artisan make: pengawal CollectionController

Anda boleh membuat koleksi menggunakan kelas koleksi atau kaedah pengumpulan (). Kedua-dua cara ditunjukkan di bawah. Tambahkan baris berikut di bahagian atas Koleksi Pengawal kelas untuk menggunakan koleksi kelas.

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

A. Buat Koleksi Menggunakan Kelas

Buat koleksi_kelas () kaedah dengan kod berikut di dalam KoleksiConntroller. Di sini, koleksi nombor dibuat dengan kelas koleksi. Apabila kaedah ini dipanggil, nilai pemboleh ubah koleksi akan ditunjukkan di penyemak imbas.

koleksi fungsi awam_kelas ()
// Buat koleksi baru menggunakan kelas Koleksi
$ koleksi1 = Koleksi baru ([67,34,89,56,23]);
// membuang kandungan berubah dalam penyemak imbas
dd ($ koleksi1);

Tambahkan laluan berikut di laluan \ web.php fail untuk memanggil koleksi_kelas ().

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

Masukkan URL berikut di penyemak imbas untuk memeriksa keluarannya.

http: // localhost: 8000 / kumpulkan1

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

B. Buat Koleksi Menggunakan Kaedah

Koleksi juga boleh dibuat dengan menggunakan kumpulkan () kaedah. Tambahkan perkara berikut kumpulkan_ kaedah () di dalam Koleksi Pengawal untuk membuat koleksi rentetan menggunakan kumpulkan () kaedah. Apabila kaedah ini dipanggil, nilai pemboleh ubah koleksi akan ditunjukkan dalam penyemak imbas, seperti sebelumnya.

fungsi awam mengumpulkan_ kaedah ()
// Buat koleksi baru menggunakan kaedah pengumpulan
$ collection2 = collect (["Bagus", "Lebih baik", "Terbaik"]);
// membuang kandungan berubah dalam penyemak imbas
dd ($ koleksi2);

Tambahkan laluan berikut di laluan \ web.php fail untuk memanggil kumpulkan_ kaedah ().

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

Masukkan URL berikut di penyemak imbas untuk memeriksa keluarannya.

http: // localhost: 8000 / kumpulkan2

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

Cari Data dalam Koleksi

Data dapat dicari dari koleksi dengan pelbagai cara. Tambahkan kod berikut di dalam Koleksi Pengawal. Dua jenis carian ditunjukkan dalam kod. Pertama, kumpulan pelanggan ditentukan, dan mengandungi () kaedah digunakan untuk mencari pelanggan yang bernama 'Janifer.' Seterusnya, kumpulan array pelbagai dimensi ditakrifkan, dan di mana () kaedah digunakan untuk dua jenis pencarian dalam koleksi. Yang pertama di mana () kaedah digunakan untuk mencari maklumat, di mana ID kunci mengandungi nilai '011176645.' Yang kedua di mana () kaedah digunakan untuk mencari maklumat di mana tanda daripada CSE409 adalah 88.

carian fungsi awam_data ()

// Menyatakan koleksi
$ customer = collect ([['id' => '894673', 'name' => 'Rahman', 'email' => '[dilindungi e-mel]'],
['id' => '454886', 'name' => 'Janifer', 'email' => '[dilindungi e-mel]'],
['id' => '306007', 'name' => 'Micheal', 'email' => '[dilindungi e-mel]']]);
// Cari menggunakan kaedah mengandungi
jika ($ customer-> mengandungi ('name', 'Janifer'))

echo "Janifer ada dalam senarai pelanggan.
";

// Nyatakan koleksi lain
$ markah = kumpulkan ([
['ID' => '011176644', 'markah' => ['CSE401' => 87, 'CSE409' => 88]],
['ID' => '011176645', 'markah' => ['CSE402' => 69, 'CSE409' => 75]],
]);
// Cari menggunakan kaedah di mana
gema $ markah-> di mana ('ID', '011176645')."
";
gema $ markah-> di mana ('markah.CSE409 ', 88);

Tambahkan laluan berikut di laluan \ web.php fail untuk memanggil carian_data ().

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

Masukkan URL berikut di penyemak imbas untuk memeriksa keluarannya.

http: // localhost: 8000 / src_collection

Output berikut akan muncul setelah menjalankan URL.

Penapis Data Pengumpulan

The penapis () kaedah digunakan untuk menyaring data dari koleksi. Tambahkan kod berikut di Koleksi Pengawal. Kumpulan koleksi produk didefinisikan dalam kod yang mengandungi nama produk dan harga. The penapis () kaedah digunakan untuk menyaring data dari pengumpulan yang harga nilai lebih besar daripada 4000. Pengumpulan data yang disaring diubah menjadi array dan dicetak oleh untuk gelung.

filter_data fungsi awam ()

// Menyatakan koleksi
$ produk = kumpulkan ([
['produk' => 'HDD', 'harga' => 6000],
['produk' => 'Tetikus', 'harga' => 500],
['produk' => 'Monitor', 'harga' => 5000],
['produk' => 'Pencetak', 'harga' => 4000],
]);
// Buat senarai lain setelah menyaring data berdasarkan nilai harga
$ filter_price = $ products-> filter (fungsi ($ item)
mengembalikan data_get ($ item, 'harga')> 4000;
);
// Baca semua data sebagai susunan dari koleksi baru
$ filtered = $ filter_price-> semua ();
// Menukar nilai array menggunakan gelung
foreach ($ ditapis sebagai nilai $)

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

Tambahkan laluan berikut di laluan \ web.php fail untuk memanggil penapis_data ().

Laluan :: get ('filter_collection', '[email dilindungi] _data');

Masukkan URL berikut di penyemak imbas untuk memeriksa keluarannya.

http: // localhost: 8000 / filter_koleksi

Output berikut akan muncul setelah menjalankan URL.

Susun Data Pengumpulan

Pelbagai mengurut kaedah ada di Laravel untuk menyusun data pengumpulan. Tambahkan kod berikut di Koleksi Pengawal. Kumpulan buku ditentukan dalam kod. The disusun mengikut() kaedah digunakan untuk menyusun data pengumpulan berdasarkan kunci 'pengarang.Kemudian, nilai pemboleh ubah koleksi yang disusun dicetak di penyemak imbas.

fungsi awam sort_data ()
// Menyatakan koleksi
$ buku = kumpulkan ([
['name' => 'Buku Masakan Python: Resipi untuk Menguasai Python 3',
'pengarang' => 'David Beazley'],
['name' => 'Pelajari Python dalam 1 Hari: Panduan Lengkap Python dengan Contoh',
'author' => 'Krishna Rungta'],
['name' => 'Pengaturcaraan Python: Pengantar Sains Komputer',
'author' => 'John M. Zelle '],
['name' => 'Python Pocket Reference 5ed: Python di Pocket Anda',
'pengarang' => 'Mark Lutz']
]);
// Susun data pengumpulan berdasarkan nama pengarang
$ sortedBook = $ books-> sortBy ('pengarang');
// membuang kandungan berubah dalam penyemak imbas
dd ($ sortedBook-> nilai () -> toArray ());

Tambahkan laluan berikut di laluan \ web.php fail untuk memanggil susun_data ().

Laluan :: get ('sort_collection', '[email dilindungi] _data');

Masukkan URL berikut di penyemak imbas untuk memeriksa keluarannya.

http: // localhost: 8000 / sort_koleksi

Output berikut akan muncul setelah menjalankan URL.

Data Pengumpulan Slice

Bahagian tertentu boleh dipotong dari koleksi menggunakan ambil () kaedah. Tambahkan kod berikut di Koleksi Pengawal. The ambil () kaedah digunakan dalam kod untuk membuat senarai baru dengan memotong tiga item pertama dari koleksi. Seterusnya, untuk gelung mencetak nilai koleksi baru.

slice_data fungsi awam ()
// Menyatakan koleksi
$ Languages ​​= collect (['PHP', 'Bash', 'Python', 'Java', 'C #', 'C ++']);
// Dapatkan semula tiga data pertama
$ slice = $ Languages-> take (3);
// Nilai pengumpulan berulang
foreach ($ slice sebagai nilai $)

echo $ nilai."";

Tambahkan laluan berikut di laluan \ web.php fail untuk memanggil slice_data ().

Laluan :: get ('slice_collection', '[email dilindungi] _data');

Masukkan URL berikut di penyemak imbas untuk memeriksa keluarannya.

http: // localhost: 8000 / slice_collection

Output berikut akan muncul setelah menjalankan URL.

Cari Perbezaan Antara Dua Koleksi

The perbezaan () kaedah digunakan untuk mencari nilai dari koleksi pertama yang tidak ada pada koleksi kedua. Tambahkan kod berikut dalam CollectionController. Dua pemboleh ubah pengumpulan ditakrifkan di sini. The perbezaan () kaedah menghasilkan koleksi baru setelah mengambil nilai dari senarai1 yang tidak wujud di senarai2.

fungsi awam find_diff ()
// Menyatakan dua koleksi
$ list1 = collect (['Notebook', 'Pen', 'Sharpner', 'Skala', 'Pensil']);
$ list2 = mengumpulkan (['Pensil', 'Pensil Warna', 'Kertas Warna', 'Pena']);
// Cari data mana yang ada dalam senarai1 tetapi tidak dalam senarai2
$ newList = $ list1-> diff ($ list2);
// membuang kandungan berubah dalam penyemak imbas
dd ($ newList);

Tambahkan laluan berikut di laluan \ web.php fail untuk memanggil cari_diff ().

Laluan :: get ('diff_collection', '[email dilindungi] _diff');

Masukkan URL berikut di penyemak imbas untuk memeriksa keluarannya.

http: // localhost: 8000 / diff_collection

Output berikut akan muncul setelah menjalankan URL.

Data Pengumpulan Balik

The selak () kaedah digunakan untuk menjadikan kunci nilai dan nilai ke kunci koleksi. Tambahkan kod berikut dalam CollectionController untuk memeriksa fungsi selak () kaedah. Kumpulan tiga item ditentukan dalam kod. The selak () kaedah digunakan untuk pengumpulan dan output dari selak () kaedah dicetak dengan menggunakan hari () kaedah.

fungsi awam flip_data ()
// Menyatakan koleksi
$ produk = kumpulkan (['name' => 'Samsung A40', 'brand' => 'Samsung', 'price' => '$ 300']);
// membuang kandungan berubah dalam penyemak imbas
dd ($ produk-> flip ());

Tambahkan laluan berikut di laluan \ web.php fail untuk memanggil flip_data ().

Laluan :: get ('flip_collection', '[email dilindungi] _data');

Masukkan URL berikut di penyemak imbas untuk memeriksa keluarannya.

http: // localhost: 8000 / flip_collection

Output berikut akan muncul setelah menjalankan URL.

Dapatkan Koleksi

The dapatkan () kaedah digunakan untuk membaca nilai kunci tertentu dari koleksi. Tambahkan kod berikut di Koleksi Pengawal. Nilai 'nama ' kunci diambil dalam kod dengan menggunakan dapatkan () kaedah.

Retrieve_data fungsi awam ()
// Menyatakan koleksi
$ produk = kumpulkan (['name' => 'Samsung A40', 'brand' => 'Samsung', 'price' => '$ 300']);
dd ($ products-> get ('name'));

Tambahkan laluan berikut di laluan \ web.php fail untuk memanggil ambil semula_data ().

Laluan :: get ('read_collection', '[email dilindungi] _data');

Masukkan URL berikut di penyemak imbas untuk memeriksa keluarannya.

http: // localhost: 8000 / read_collection

Output berikut akan muncul setelah menjalankan URL.

Data Pengumpulan Kumpulan

The kumpulanDengan () kaedah digunakan untuk membuat koleksi baru dari koleksi lain dengan mengelompokkan berdasarkan nilai kunci tertentu. Tambahkan kod berikut di dalam Koleksi Pengawal. The kumpulanDengan () kaedah digunakan di sini untuk mengembalikan koleksi baru dengan mengelompokkan nilai berdasarkan 'Apr'kunci.

fungsi awam kumpulan_data()

kumpulan fungsi awam_data ()
$ jualan = kumpulkan ([
['Jan' => 100000],
['Mar' => 500000],
['Apr' => 600000],
['Jan' => 450000],
['Jun' => 230000],
['Ogos' => 600000],
['Sep' => 789333],
['Jul' => 452000],
['Jan' => 700000],
['Apr' => 490000],
['Jun' => 670000],
['Apr' => 560000]
]);
dd ($ sales-> groupBy ('Apr'));

Tambahkan laluan berikut di laluan \ web.php fail untuk memanggil kumpulan_data ().

Laluan :: get ('group_collection', '[email dilindungi] _data');

Masukkan URL berikut di penyemak imbas untuk memeriksa keluarannya.

http: // localhost: 8000 / group_collection

Output berikut akan muncul setelah menjalankan URL.

Gabungkan Data Pengumpulan

The meletup () kaedah digunakan untuk menggabungkan nilai utama tertentu dari koleksi. Tambahkan kod berikut di dalam Koleksi Pengawal. The meletup () kaedah digunakan di sini untuk menggabungkan nilai-nilai nama kunci koleksi dengan ruang.

fungsi awam join_data ()
// Menyatakan koleksi
$ customer = collect ([['id' => '894673', 'name' => 'Rahman', 'email' => '[email dilindungi]'],
['id' => '454886', 'name' => 'Janifer', 'email' => '[dilindungi e-mel]'],
['id' => '306007', 'name' => 'Micheal', 'email' => '[dilindungi e-mel]']]);
// Gabungkan dan cetak nilai
dd ($ customer-> implode ('name', "));

Tambahkan laluan berikut di laluan \ web.php fail untuk memanggil join_data ().

Laluan :: get ('join_collection', '[email dilindungi] _data');

Masukkan URL berikut di penyemak imbas untuk memeriksa keluarannya.

http: // localhost: 8000 / join_collection

Output berikut akan muncul setelah menjalankan URL.

Baca Kunci Koleksi

The kunci () kaedah digunakan untuk membuat koleksi baru dengan semua kunci koleksi lain. Tambahkan kod berikut di dalam Koleksi Pengawal. Koleksi yang didefinisikan dalam kod berisi berbagai jenis data sebagai item, seperti nilai dengan indeks angka, nilai dengan kunci, dan array lain.

fungsi awam read_keys ()
// Menyatakan koleksi
$ mixdata = kumpulkan ([
['laman web' => 'google.com ',' type '=>' search engine '],' language '=>' PHP ',
1234, 'name' => 'Fahmida', 'game' => 'PUBG', 'color' => 'biru']);
// Cetak koleksi baru yang dihasilkan dengan kaedah kunci ()
dd ($ mixdata-> kekunci ());

Tambahkan laluan berikut di laluan \ web.php fail untuk memanggil kunci_ baca ().

Laluan :: get ('key_collection', '[email dilindungi] _keys');

Masukkan URL berikut di penyemak imbas untuk memeriksa keluarannya.

http: // localhost: 8000 / key_collection

Output berikut akan muncul setelah menjalankan URL.

Kesimpulannya

Pengumpulan Laravel membolehkan anda melakukan pelbagai jenis tugas dengan data, seperti susunan PHP. Beberapa kaedah berguna Laravel Collection dijelaskan dalam tutorial ini dengan menggunakan kod yang sangat mudah. Eloquent ORM adalah penggunaan lain dari koleksi di Laravel yang tidak diliputi dalam tutorial ini. Satu batasan utama kelas koleksi adalah bahawa ia menghasilkan koleksi baru setiap kali kaedah dipanggil kerana tidak boleh berubah. Setelah membaca tutorial ini, pembaca kini harus mengetahui beberapa kegunaan asas koleksi Laravel.

WinMouse membolehkan anda menyesuaikan & meningkatkan pergerakan penunjuk tetikus pada PC Windows
Sekiranya anda ingin meningkatkan fungsi lalai penunjuk tetikus anda gunakan perisian percuma WinMouse. Ia menambah lebih banyak ciri untuk membantu a...
Butang klik kiri tetikus tidak berfungsi pada Windows 10
Sekiranya anda menggunakan tetikus khusus dengan komputer riba, atau komputer desktop anda tetapi butang klik kiri tetikus tidak berfungsi pada Window...
Kursor melompat atau bergerak secara rawak semasa menaip di Windows 10
Sekiranya anda mendapati kursor tetikus anda melompat atau bergerak sendiri, secara automatik, secara rawak semasa menaip komputer riba atau komputer ...