Rumah >pembangunan bahagian belakang >tutorial php >Bagaimana untuk Menghimpunkan Tatasusunan Bersekutu mengikut Nilai Lajur Menggunakan PDO?
PDO: Mengumpulkan Tatasusunan Bersekutu mengikut Nilai Lajur
Menghimpun data mengikut nilai lajur tertentu boleh berguna untuk mengatur dan memanipulasi set data. Soalan ini meneroka cara untuk mencapai perkara ini menggunakan kaedah fetchAll PDO.
Contoh yang disediakan menunjukkan set data pekerja dengan lajur seperti nama, umur, jantina dan jawatan. Matlamatnya adalah untuk mendapatkan tatasusunan bersekutu yang dikumpulkan mengikut lajur nama, menghasilkan struktur tatasusunan seperti:
[ 'Antony' => ['age' => 34, 'sex' => 'M', 'position' => 'programmer'], 'Sally' => ['age' => 30, 'sex' => 'F', 'position' => 'manager'], 'Matthew' => ['age' => 28, 'sex' => 'M', 'position' => 'designer'], ]
Pendekatan awal menggunakan PDO::FETCH_GROUP|PDO::FETCH_ASSOC memperkenalkan tahap sarang yang tidak diingini. Untuk menyelesaikan masalah ini, soalan mencadangkan menggunakan fungsi panggil balik dengan PDO::FETCH_GROUP|PDO::FETCH_ASSOC|PDO::FETCH_FUNC. Walau bagaimanapun, ia menghadapi masalah dengan fungsi panggil balik yang menerima elemen individu dan bukannya tatasusunan.
Penyelesaian kepada isu ini ialah menggunakan PDO::FETCH_GROUP|PDO::FETCH_UNIQUE. Pendekatan ini menetapkan lajur pertama sebagai kunci tatasusunan dan menetapkan lajur yang selebihnya sebagai nilai, menghasilkan tatasusunan bersekutu berkumpulan yang diingini tanpa sarang atau manipulasi tatasusunan yang tidak perlu.
Atas ialah kandungan terperinci Bagaimana untuk Menghimpunkan Tatasusunan Bersekutu mengikut Nilai Lajur Menggunakan PDO?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!