(PHP 4, PHP 5, PHP 7)
max — Maximalwert bestimmen
Ist der erste und einzige Parameter ein Array, gibt max() den höchsten Wert dieses Arrays zurück. Sind mindestens zwei Parameter übergeben, gibt max() den größeren dieser Werte zurück.
Hinweis:
Werte unterschiedlicher Typen werden unter Verwendung der Standard-Vergleichsregeln verglichen. Zum Beispiel wird ein nicht-numerischer String mit einem Integer verglichen als ob er
0
wäre, aber mehrere nicht-numerische String-Werte werden alphanumerisch verglichen. Der tatsächlich zurückgegebene Wert ist vom ursprünglichen Typ ohne angewandte Konvertierung.
Seien Sie vorsichtig, wenn Sie Argumente verschiedenen Typs übergeben, da max() in diesem Fall unvorhersehbare Ergebnisse liefert.
values
Ein die Werte enthaltendes Array.
value1
Ein vergleichbarer Wert.
...
Ein vergleichbarer Wert.
max() liefert den gemäß den Standard-Vergleichen als
"größten" angesehenen Parameter-Wert zurück. Evaluieren mehrere Werte
unterschiedlichen Typs als gleich (z.B. 0
und
'abc'
), wird der zuerst übergebene zurückgegeben.
Wird ein leeres Array übergeben, liefert die Funktion FALSE
zurück und löst einen
E_WARNING
-Fehler aus.
Beispiel #1 Verwendungsbeispiel von max()
<?php
echo max(2, 3, 1, 6, 7); // 7
echo max(array(2, 4, 5)); // 5
// Die Zeichenkette 'hallo' wird wie 0 behandelt, wenn sie mit einem Int verglichen wird
// Da die beiden Werte gleich sind, bestimmt die Reihenfolge der Übergabe das Ergebnis
echo max(0, 'hallo'); // 0
echo max('hallo', 0); // hallo
// Hier vergleichen wir -1 < 0, so dass 'hallo' der größte Wert ist
echo max('hallo', -1); // hallo
// Bei mehreren Arrays unterschiedlicher Länge, gibt max das längste zurück
$val = max(array(2, 2, 2), array(1, 1, 1, 1)); // array(1, 1, 1, 1)
// Mehrere Arrays gleicher Länge werden von links nach rechts verglichen,
// daher ist in unserem Beispiel 2 == 2, aber 5 > 4
$val = max(array(2, 4, 8), array(2, 5, 1)); // array(2, 5, 1)
// Sind ein Array und ein Nicht-Array-Parameter gegeben, wird das Array zurückgegeben,
// da Vergleiche Arrays als größer behandeln als alle anderen Werte
$val = max('string', array(2, 5, 7), 42); // array(2, 5, 7)
// Ist ein Argument NULL oder ein Boole'scher Wert, wird es mit anderen Werten
// unter Verwendung der Regel FALSE < TRUE verglichen, ohne Rücksicht auf die anderen beteiligten Typen
// Im folgenden Beispiel wird -10 im Vergleich wie TRUE behandelt
$val = max(-10, FALSE); // -10
// Andererseits wird 0 wie FALSE behandelt, so dass es "kleiner" ist als TRUE
$val = max(0, TRUE); // TRUE
?>