Isih Tatasusunan Berbilang Dimensi mengikut Medan Tatasusunan Dalam dalam PHP [pendua]
Pertimbangkan tatasusunan berbilang dimensi yang mewakili struktur seperti pangkalan data, di mana setiap elemen menandakan baris dengan tatasusunan dalam yang mengandungi pasangan nilai nama medan. Contohnya:
Array ( [0] => Array ( [name] => 'Sony TV' [price] => 600.00 ) [1] => Array ( [name] => 'LG TV' [price] => 350.00 ) [2] => Array ( [name] => 'Samsung TV' [price] => 425.00 ) }
Matlamatnya ialah untuk mengisih baris ini berdasarkan medan "harga". Hasil yang diinginkan ialah:
Array ( [0] => Array ( [name] => 'LG TV' [price] => 350.00 ) [1] => Array ( [name] => 'Samsung TV' [price] => 425.00 ) [2] => Array ( [name] => 'Sony TV' [price] => 600.00 ) }
Penyelesaian:
Untuk mencapai pengisihan ini, PHP menawarkan penyelesaian mudah berikut:
array_multisort(array_column($yourArray, "price"), SORT_ASC, $yourArray);
Sebagai alternatif , coretan berikut boleh digunakan untuk mengekalkan kunci tatasusunan luar:
$col = array_column($yourArray, "price"); array_multisort($col, SORT_ASC, SORT_NUMERIC, $yourArray);
Atas ialah kandungan terperinci Bagaimana untuk Mengisih Tatasusunan Berbilang Dimensi dalam PHP oleh Medan Tatasusunan Dalam?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!