Wie finde ich den Maximalwert in einer bestimmten Spalte eines mehrdimensionalen PHP-Arrays?

DDD
Freigeben: 2024-11-21 00:24:11
Original
336 Leute haben es durchsucht

How to Find the Maximum Value in a Specific Column of a Multidimensional PHP Array?

Den Maximalwert in mehrdimensionalen PHP-Arrays finden

Bei der Arbeit mit mehrdimensionalen Arrays in PHP kann es schwierig sein, das Element mit abzurufen höchster Wert für einen bestimmten Schlüssel. Im Gegensatz zu eindimensionalen Arrays reicht die native Funktion max() für diese Aufgabe nicht aus.

Verwendung der Funktion array_column

Ab PHP 5.5 führte PHP die Funktion array_column( )-Funktion, mit der Sie Werte aus einem bestimmten Schlüssel in einem mehrdimensionalen Array extrahieren können. Dies bietet eine effiziente Möglichkeit, den Maximalwert für eine bestimmte Spalte zu finden:

$maxTotal = max(array_column($array, 'Total'));
Nach dem Login kopieren

Dies gibt den Maximalwert des Schlüssels „Total“ im angegebenen Array zurück.

Zusätzliche Überlegungen

Nachdem Sie den Maximalwert ermittelt haben, müssen Sie möglicherweise die restlichen mit diesem Maximalwert verbundenen Daten abrufen. Dazu können Sie das ursprüngliche Array durchlaufen und die Gesamtwerte vergleichen:

$result = null;
foreach ($array as $data) {
    if ($data['Total'] === $maxTotal) {
        $result = $data;
        break; // Found the maximum, stop iterating
    }
}
Nach dem Login kopieren

Beispiel

Betrachten Sie das bereitgestellte Array:

$array = array(
    array(
        'Key1' => 'Key1',
        'Total' => 13
    ),
    array(
        'Key2' => 'Key2',
        'Total' => 117
    ),
    array(
        'Key3' => 'Key3',
        'Total' => 39
    )
);
Nach dem Login kopieren

Verwendung der Funktion array_column():

$maxTotal = max(array_column($array, 'Total')); // 117
Nach dem Login kopieren

Abrufen der zugehörigen Daten:

$result = null;
foreach ($array as $data) {
    if ($data['Total'] === $maxTotal) {
        $result = $data;
    }
}

print_r($result); // {'Key2' => 'Key2', 'Total' => 117}
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie finde ich den Maximalwert in einer bestimmten Spalte eines mehrdimensionalen PHP-Arrays?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage