Rumah >pembangunan bahagian belakang >masalah PHP >Bagaimana untuk mengumpulkan tatasusunan php
PHP ialah salah satu bahasa yang digunakan secara meluas, terutamanya dalam pembangunan web, ia adalah bahasa yang sangat fleksibel dan mudah digunakan. Tatasusunan dalam PHP ialah alat yang sangat mudah dan praktikal apabila kita perlu mengumpulkan data. Dalam artikel ini, kita akan melihat dengan lebih dekat cara tatasusunan PHP dikumpulkan.
Langkah 1: Sediakan data
Sebelum melaksanakan operasi pengumpulan, kami perlu menyediakan data. Artikel ini menggunakan data pelajar dalam sistem pengurusan maklumat pelajar. Data khusus adalah seperti berikut:
$students = [ [ "name" => "张三", "gender" => "男", "age" => 18, "score" => 85, "class" => "T1" ], [ "name" => "李四", "gender" => "女", "age" => 19, "score" => 80, "class" => "T2" ], [ "name" => "王五", "gender" => "男", "age" => 20, "score" => 95, "class" => "T1" ], [ "name" => "赵六", "gender" => "女", "age" => 18, "score" => 70, "class" => "T2" ], [ "name" => "钱七", "gender" => "男", "age" => 19, "score" => 90, "class" => "T1" ] ];
Data di atas termasuk nama pelajar, jantina, umur, gred dan maklumat kelas.
Langkah 2: Himpunkan mengikut kelas
Sekarang, kita akan menggunakan fungsi array_column dalam PHP untuk mengumpulkan data di atas mengikut kelas. Fungsi array_column boleh mendapatkan subarray dalam tatasusunan berbilang dimensi Contohnya, kod berikut akan mendapat subarray bernama "class" daripada tatasusunan $students:
$class = array_column($students, 'class');
Array $class hanya akan mengandungi Kelas semua pelajar. maklumat. Kita boleh menggunakan fungsi array_unique dalam PHP untuk mendapatkan kelas unik. Ini akan menyediakan asas untuk kami mengumpulkan maklumat pelajar.
$unique_classes = array_unique($class);
Memandangkan kita mempunyai tatasusunan $unique_classes yang mengandungi senarai semua kelas unik, mari gunakan gelung foreach untuk mengulangi tatasusunan dan mencipta tatasusunan berbilang dimensi baharu $grouped_students dan kumpulan pelajar dalam kelas yang sama Maklumat disimpan dalam subarray.
$grouped_students = array(); foreach($unique_classes as $class_name){ $grouped_students[$class_name] = array(); foreach($students as $student){ if($student['class'] == $class_name){ $grouped_students[$class_name][] = $student; } } }
Kod di atas akan mengumpulkan semua maklumat pelajar mengikut kelas dan menyimpannya dalam tatasusunan berbilang dimensi bernama $grouped_students. Sekarang kita boleh menggunakan var_dump atau print_r untuk melihat tatasusunan $grouped_students dan menyemak sama ada pengelompokan itu berjaya. Berikut ialah output:
Array ( [T1] => Array ( [0] => Array ( [name] => 张三 [gender] => 男 [age] => 18 [score] => 85 [class] => T1 ) [1] => Array ( [name] => 王五 [gender] => 男 [age] => 20 [score] => 95 [class] => T1 ) [2] => Array ( [name] => 钱七 [gender] => 男 [age] => 19 [score] => 90 [class] => T1 ) ) [T2] => Array ( [0] => Array ( [name] => 李四 [gender] => 女 [age] => 19 [score] => 80 [class] => T2 ) [1] => Array ( [name] => 赵六 [gender] => 女 [age] => 18 [score] => 70 [class] => T2 ) ) )
Output di atas menunjukkan bahawa kami telah berjaya mengumpulkan maklumat pelajar mengikut kelas.
Langkah 3: Kumpulan berdasarkan bidang lain
Selain kelas, kami juga boleh mengumpulkan maklumat pelajar berdasarkan bidang lain. Di sini kita akan menggunakan umur sebagai kriteria pengelompokan. Kod khusus adalah seperti berikut:
$grouped_students_by_age = array(); foreach($students as $student){ $grouped_students_by_age[$student['age']][] = $student; }
Kod di atas akan mengumpulkan maklumat pelajar mengikut umur dan menyimpannya dalam tatasusunan berbilang dimensi bernama $grouped_students_by_age. Sekarang kita boleh menggunakan var_dump atau print_r untuk melihat tatasusunan $grouped_students_by_age dan menyemak sama ada pengelompokan itu berjaya. Berikut ialah output:
Array ( [18] => Array ( [0] => Array ( [name] => 张三 [gender] => 男 [age] => 18 [score] => 85 [class] => T1 ) [1] => Array ( [name] => 赵六 [gender] => 女 [age] => 18 [score] => 70 [class] => T2 ) ) [19] => Array ( [0] => Array ( [name] => 李四 [gender] => 女 [age] => 19 [score] => 80 [class] => T2 ) [1] => Array ( [name] => 钱七 [gender] => 男 [age] => 19 [score] => 90 [class] => T1 ) ) [20] => Array ( [0] => Array ( [name] => 王五 [gender] => 男 [age] => 20 [score] => 95 [class] => T1 ) ) )
Seperti yang anda lihat, kami telah berjaya mengumpulkan maklumat pelajar berdasarkan umur.
Ringkasan
Dalam artikel ini, kami memperkenalkan cara menggunakan tatasusunan PHP untuk mengumpulkan data. Kami mengambil maklumat pelajar sebagai contoh dan mengumpulkan data mengikut kelas dan umur. Operasi ini boleh membantu kami mengurus dan memproses data dengan lebih mudah, dan meningkatkan kecekapan dan kebolehbacaan kod. Akhir sekali, pembaca digalakkan untuk mencuba kaedah pengelompokan lain dan memainkan sepenuhnya kelebihan tatasusunan PHP dalam pembangunan sebenar.
Atas ialah kandungan terperinci Bagaimana untuk mengumpulkan tatasusunan php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!