Rumah >pembangunan bahagian belakang >tutorial php >Bagaimana untuk Mencari Nilai Maksimum dalam Lajur Khusus Tatasusunan PHP Berbilang Dimensi?
Mencari Nilai Maksimum dalam Tatasusunan PHP Berbilang Dimensi
Apabila bekerja dengan tatasusunan berbilang dimensi dalam PHP, mungkin sukar untuk mendapatkan semula elemen dengan nilai tertinggi untuk kunci tertentu. Tidak seperti tatasusunan satu dimensi, fungsi maks() asli tidak mencukupi untuk tugasan ini.
Menggunakan Fungsi lajur_tatasusunan
Dari PHP 5.5 dan seterusnya, PHP memperkenalkan array_column( ) fungsi, yang membolehkan anda mengekstrak nilai daripada kunci tertentu dalam tatasusunan berbilang dimensi. Ini menyediakan cara yang cekap untuk mencari nilai maksimum untuk lajur tertentu:
$maxTotal = max(array_column($array, 'Total'));
Ini akan mengembalikan nilai maksimum kunci 'Jumlah' dalam tatasusunan yang diberikan.
Pertimbangan Tambahan
Selepas mencari nilai maksimum, anda mungkin perlu mendapatkan semula data yang lain yang dikaitkan dengan maksimum tersebut. Untuk melakukan ini, anda boleh lelaran melalui tatasusunan asal dan bandingkan nilai 'Jumlah':
$result = null; foreach ($array as $data) { if ($data['Total'] === $maxTotal) { $result = $data; break; // Found the maximum, stop iterating } }
Contoh
Pertimbangkan tatasusunan yang disediakan:
$array = array( array( 'Key1' => 'Key1', 'Total' => 13 ), array( 'Key2' => 'Key2', 'Total' => 117 ), array( 'Key3' => 'Key3', 'Total' => 39 ) );
Menggunakan fungsi array_column():
$maxTotal = max(array_column($array, 'Total')); // 117
Mendapatkan semula data yang berkaitan:
$result = null; foreach ($array as $data) { if ($data['Total'] === $maxTotal) { $result = $data; } } print_r($result); // {'Key2' => 'Key2', 'Total' => 117}
Atas ialah kandungan terperinci Bagaimana untuk Mencari Nilai Maksimum dalam Lajur Khusus Tatasusunan PHP Berbilang Dimensi?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!