max

(PHP 4, PHP 5, PHP 7, PHP 8)

maxBestimmt den Maximalwert

Beschreibung

max(mixed$value, mixed...$values): mixed

Alternative Signatur (benannte Parameter werden nicht unterstützt):

max(array$value_array): mixed

Ist der erste und einzige Parameter ein Array, gibt max() den größten Wert dieses Arrays zurück. Werden mindestens zwei Parameter übergeben, gibt max() den größeren dieser Werte zurück.

Hinweis:

Werte unterschiedlichen Typs werden unter Verwendung der Standard-Vergleichsregeln verglichen. Zum Beispiel wird ein nichtnumerischer string mit einem int verglichen, als ob er 0 wäre, aber mehrere nichtnumerische string-Werte werden alphanumerisch verglichen. Der tatsächlich zurückgegebene Wert ist vom ursprünglichen Typ ohne angewandte Umwandlung.

Achtung

Vorsicht ist geboten, wenn Argumente verschiedenen Typs übergeben werden, da max() in diesem Fall unvorhersehbare Ergebnisse liefert.

Parameter-Liste

value

Ein vergleichbarer Wert.

values

Jegliche vergleichbaren Werte.

value_array

Ein Array, das Werte enthält.

Rückgabewerte

max() gibt 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.

Fehler/Exceptions

Wird ein leeres Array übergeben, löst max() einen ValueError aus.

Changelog

VersionBeschreibung
8.0.0max() löst bei einem Fehler nun einen ValueError aus; vorher wurde false zurückgegeben und ein Fehler der Stufe E_WARNING ausgegeben.
8.0.0 Die Art und Weise, wie Zeichenketten und Zahlen verglichen werden, wurde geändert, sodass max() in solchen Fällen nicht mehr je nach Reihenfolge der Argumente unterschiedliche Werte zurückgibt.

Beispiele

Beispiel #1 Beispiel für die Verwendung von max()

<?php
echo max(2, 3, 1, 6, 7); // 7
echo max(array(2, 4, 5)); // 5

// Hier vergleichen wir -1 < 0, sodass '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 boolescher 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
?>

Siehe auch

  • min() - Bestimmt den Minimalwert
  • count() - Zählt alle Elemente eines Arrays oder eines Countable-Objekts
To Top