In PHP wird die CEIL () -Funktion verwendet, um eine Zahl abzurunden. Es gibt die kleinste Ganzzahl mehr als oder gleich der angegebenen Zahl zurück. Zum Beispiel:
echo ceil(4.3); // Ausgabe 5
Aber was passiert, wenn wir nicht numerische Typen wie Null oder False passieren? In diesem Artikel wird diese Grenzsituation im Detail untersucht.
CEIL () benötigt einen Parameter, der ein numerischer Typ sein sollte (int oder float). PHP konvertiert automatisch den Typ (Typ -Zwang) beim Aufrufen einer Funktion, dh den übergebenen Wert in Zahlen so weit wie möglich umwandeln.
Wenn die Funktion CEIL () NULL als Parameter empfängt, wandelt PHP Null in eine Zahl 0 um und rundet dann nach oben.
Beispielcode:
echo ceil(null); // Ausgabe 0
erklären:
Null wird in eine Nummer 0 umgewandelt
Ceil (0) gleich 0
In ähnlicher Weise wird PHP es auch in eine Zahl umwandeln, wenn Falsch übergeben wird. False wird in eine Zahl konvertiert und das Ergebnis ist 0 und dann Ceil () aufgerufen.
Beispielcode:
echo ceil(false); // Ausgabe 0
erklären:
False wird in die Nummer 0 konvertiert
Ceil (0) gleich 0
Weitere Vollständigkeit, schauen wir uns das Ergebnis an, wenn sie eintraten :
echo ceil(true); // Ausgabe 1
Hier wird True in die Nummer 1 umgewandelt, und Ceil (1) ist immer noch 1 .
Als Ergänzung ist es auch ähnlich, wenn es in einer leeren Zeichenfolge besteht:
echo ceil(""); // Ausgabe 0
Die Umwandlung einer leeren Zeichenfolge in eine Zahl beträgt ebenfalls 0 .
Wert bestehen | In Zahlen konvertieren | CEIL () Ausgangsergebnis |
---|---|---|
NULL | 0 | 0 |
FALSCH | 0 | 0 |
WAHR | 1 | 1 |
"" (leere Zeichenfolge) | 0 | 0 |
Schlussfolgerung : Wenn Null oder False eingegeben wird, verarbeitet Ceil () tatsächlich die Nummer 0 und der endgültige Rückgabewert ist 0 . Dieses Verhalten stammt aus dem Typ -Gussmechanismus von PHP.
<?php
$values = [null, false, true, "", 3.7];
foreach ($values as $val) {
echo 'ceil(' . var_export($val, true) . ') = ' . ceil($val) . PHP_EOL;
}
/*
Ausgabe结果:
ceil(NULL) = 0
ceil(false) = 0
ceil(true) = 1
ceil('') = 0
ceil(3.7) = 4
*/
Ich hoffe, dieser Artikel kann Ihnen helfen, die Leistung der CEIL () -Funktion in PHP bei der Übergabe von Null und False deutlicher zu verstehen.
Wenn Sie an dem Typ -Konvertierungsmechanismus von PHP interessiert sind, wird empfohlen, die obligatorischen Regeln von PHP eingehend zu lernen.