min
(PHP 4, PHP 5, PHP 7, PHP 8)
min — Bestimmt den Minimalwert
Beschreibung
Alternative Signatur (benannte Parameter werden nicht unterstützt):
Ist der erste und einzige Parameter ein Array, gibt min() den niedrigsten Wert dieses Arrays zurück. Werden mindestens zwei Parameter übergeben, gibt min() den kleinsten 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.
Vorsicht ist geboten, wenn Argumente verschiedenen Typs übergeben werden, da min() 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
min() gibt den gemäß den Standard-Vergleichen als
"kleinsten" 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, gibt die Funktion false
zurück und löst
einen E_WARNING
-Fehler aus.
Beispiele
Beispiel #1 Beispiel für die Verwendung von min()
<?php
echo min(2, 3, 1, 6, 7); // 1
echo min(array(2, 4, 5)); // 2
// 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 min(0, 'hello'); // 0
echo min('hello', 0); // hello
// Hier vergleichen wir -1 < 0, so dass -1 der kleinste Wert ist
echo min('hello', -1); // -1
// Bei mehreren Arrays unterschiedlicher Länge, gibt min das kürzeste zurück
$val = min(array(2, 2, 2), array(1, 1, 1, 1)); // array(2, 2, 2)
// Mehrere Arrays gleicher Länge werden von links nach rechts verglichen,
// daher ist in unserem Beispiel 2 == 2, aber 4 < 5
$val = min(array(2, 4, 8), array(2, 5, 1)); // array(2, 4, 8)
// Sind ein Array und ein Nicht-Array-Parameter gegeben, wird nie das Array zurückgegeben,
// da Vergleiche Arrays als größer behandeln als alle anderen Werte
$val = min('string', array(2, 5, 7), 42); // string
// Ist ein Argument NULL oder ein boolescher Wert, wird es mit anderen Werten
// unter Verwendung der Regeln FALSE < TRUE und NULL == FALSE verglichen, ohne Rücksicht auf die anderen beteiligten Typen
// In den folgenden Beispielen wird -10 im Vergleich wie TRUE behandelt
$val = min(-10, FALSE, 10); // FALSE
$val = min(-10, NULL, 10); // NULL
// Andererseits wird 0 wie FALSE behandelt, so dass es "kleiner" ist als TRUE
$val = min(0, TRUE); // 0
?>