Im vorherigen Artikel → „PHP-Array-Lernen: Array-Elemente vergleichen und die ersten und zweitgrößten Werte ermitteln“ haben wir die Verwendung von for-Schleifen eingeführt, um die Größen der Elemente im Array einzeln zu vergleichen und die maximalen und zu erhalten Zweite Werte im Array. Die zweitgrößte Wertmethode. Halten Sie diese Methode für etwas kompliziert? Tatsächlich können wir PHP-Funktionen verwenden, um den Maximalwert und den zweiten Maximalwert zu ermitteln. Das Thema dieses Artikels ist das gleiche wie im vorherigen: „ Berechnen Sie anhand einer Reihe von Zahlen den Maximalwert und den zweiten Maximalwert. Diesmal verwenden wir jedoch keine for-Schleifen und if-Anweisungen. Wir verwenden dazu integrierte PHP-Funktionen.
Definieren Sie ein Array, das einen solchen Datensatz enthält:
$arr = array(555,5,1,429,18,21,52,2,52,9,3,);
Sie möchten den Maximalwert 555 und den zweiten Maximalwert 429 herausnehmen.
Tatsächlich gibt es in PHP eine integrierte max()-Funktion, mit der wir in einem Schritt den Maximalwert im Array ermitteln können aus dem Array und dem Rest. Verwenden Sie dann die Funktion max() in den folgenden Elementen, um den Maximalwert zu erhalten.
Werfen wir einen Blick auf den Implementierungscode:
<?php header("content-type:text/html;charset=utf-8"); $arr = array(555,5,1,429,18,21,52,2,52,9,3,); $max = max($arr); $arr = array_diff($arr,array($max)); $secMax = max($arr); echo "最大值为".$max.",第二大值为".$secMax; ?>
Analyse:
max($arr)
, um den Maximalwert des Arrays zu erhalten und ihn $max zuzuweisen
. max($arr)
获取数组最大值赋值给$max
。
然后创建一个只包含$max一个值的新数组,将该数组和$arr数组比较,取差值;简单来说,array_diff($arr,array($max))
就是用来删除最大值$max
。
最后在调用一次max($arr)
在剩下的元素中取最大值,就获得到原数组的第二大元素,将该值赋给$secMax
Dann erstellen Sie ein neues Array, das nur einen Wert von $max enthält, vergleichen Sie das Array mit dem $arr-Array und nehmen Sie die Differenz, einfach ausgedrückt: array_diff($arr,array($max))</; code> wird verwendet, um den Maximalwert <code>$max
zu löschen.
Rufen Sie abschließend max($arr)
auf, um den Maximalwert unter den verbleibenden Elementen zu erhalten. Anschließend erhalten Sie das zweitgrößte Element des ursprünglichen Arrays und weisen diesen Wert $ secMax
.
Das Ausgabeergebnis ist also:
Implementierungsidee 2:
Sie können das Array in aufsteigender oder absteigender Reihenfolge nach der Größe der Elementwerte, dann nach dem Maximalwert und dem zweiten sortieren Maximalwerte des Arrays sind: Das erste und zweite (absteigende Reihenfolge) oder das vorletzte und das vorletzte (aufsteigende Reihenfolge) Element
//升序排序 $arr = array(555,5,1,429,18,21,52,2,52,9,3,); sort($arr); var_dump($arr);
//降序排序 $arr = array(555,5,1,429,18,21,52,2,52,9,3,); rsort($arr); var_dump($arr);
Wir können diese beiden Elemente einfach herausnehmen. Werfen wir einen Blick auf den Implementierungscode:
<?php header("content-type:text/html;charset=utf-8"); $arr = array(555,5,1,429,18,21,52,2,52,9,3,); //降序排序 rsort($arr); $max = $arr[0]; $secMax = $arr[1]; echo "最大值为".$max.",第二大值为".$secMax."<br>"; //升序排序 sort($arr); $len = count($arr); //数组长度 $max = $arr[$len-1]; $secMax = $arr[$len-2]; echo "最大值为".$max.",第二大值为".$secMax; ?>
Ausgabeergebnisse:
Die Methode der aufsteigenden Reihenfolge muss auch das Problem der Array-Länge berücksichtigen, während die Methode der absteigenden Reihenfolge einfacher ist.
Okay, das ist alles. Wenn Sie noch etwas wissen möchten, können Sie hier klicken. → →php-Video-Tutorial
🎜🎜Abschließend empfehle ich ein kostenloses Video-Tutorial zu PHP-Arrays: 🎜PHP-Funktions-Array-Array-Funktions-Video-Erklärung🎜, kommen Sie und lernen Sie! 🎜Das obige ist der detaillierte Inhalt vonTipps zum Erlernen von PHP-Arrays und zum Verwenden von Funktionen zum Extrahieren der Maximal- und Zweitmaximalwerte. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!