intval
Konvertiert einen Wert nach integer
Beschreibung
int intval
( mixed $var
[, int $base = 10
] )
Parameter-Liste
-
var
-
Der skalare Wert (das kann ein Ausdruck oder eine einfache Variable
sein, nicht jedoch ein Array oder Objekt.), der nach integer
konvertiert werden soll.
-
base
-
Die Basis der Konvertierung
Hinweis:
Wenn base 0 ist, wird die verwendete Basis
durch das Format von var bestimmt:
-
wenn die Zeichenkette ein "0x" (oder "0X") Präfix enthält, ist die
Basis 16 (hexadezimal); andernfalls,
-
wenn die Zeichenkette mit "0" beginnt, ist die Basis 8 (oktal);
andernfalls,
-
ist die Basis 10 (dezimal).
Rückgabewerte
Der integer-Wert von var bei Erfolg, sonst 0.
Leere Arrays geben den Wert 0 zurück, nichtleere Arrays den Wert 1.
Der Maximalwert hängt vom System ab. 32-Bit-Systeme haben einen maximalen
Wertebereich für signed integer von -2147483648 bis 2147483647. Also wird
beispielsweise auf solch einem System intval('1000000000000')
2147483647 zurückgeben. Der maximale signed integer-Wert auf 64-Bit-Systemen ist
9223372036854775807.
Zeichenketten werden meistens 0 zurückgeben, auch wenn das erste Zeichen hier
entscheidend ist. Es gelten die normalen Regeln zur
Umwandlung nach integer.
Beispiele
Beispiel #1 intval-Beispiele
Die folgenden Beispiele beziehen sich auf ein 32-Bit-System
<?php
echo intval(42); // 42
echo intval(4.2); // 4
echo intval('42'); // 42
echo intval('+42'); // 42
echo intval('-42'); // -42
echo intval(042); // 34
echo intval('042'); // 42
echo intval(1e10); // 1410065408
echo intval('1e10'); // 1
echo intval(0x1A); // 26
echo intval(42000000); // 42000000
echo intval(420000000000000000000); // 0
echo intval('420000000000000000000'); // 2147483647
echo intval(42, 8); // 42
echo intval('42', 8); // 34
echo intval(array()); // 0
echo intval(array('foo', 'bar')); // 1
?>
Anmerkungen
Hinweis:
Der base-Parameter hat keinerlei Auswirkung, wenn der
var-Parameter kein String ist.