Signatur
Beschreibung
is_long() ist ein Alias der Funktion is_int() und prüft, ob der angegebene Wert vom Typ int ist. Die Funktion gibt true zurück, wenn der Wert eine Ganzzahl ist, andernfalls false.
Da es sich um einen vollständigen Alias handelt, ist das Verhalten identisch mit is_int() sowie dem ebenfalls synonymen is_integer(). In der Praxis wird is_int() bevorzugt verwendet, da dieser Name klarer und gängiger ist.
Typische Anwendungsfälle sind die Typprüfung vor arithmetischen Operationen, die Validierung von Funktionsargumenten oder die Überprüfung von Benutzereingaben, die als Ganzzahl erwartet werden. Zu beachten ist, dass Strings wie '42' oder Gleitkommazahlen wie 42.0 nicht als Integer erkannt werden.
Parameter
| Name | Typ | Default | Beschreibung |
|---|---|---|---|
| $value Pflicht | mixed | Der zu prüfende Wert beliebigen Typs. |
Rückgabewert
true zurück, wenn value vom Typ int ist, andernfalls false.Beispiele
Grundlegende Typprüfung mit is_long
<?php
var_dump(is_long(42)); // true
var_dump(is_long(-7)); // true
var_dump(is_long(42.0)); // false (float)
var_dump(is_long('42')); // false (string)
var_dump(is_long(true)); // false (bool)
var_dump(is_long(null)); // false
Validierung eines Funktionsarguments
<?php
function verarbeiteSeite(mixed $seite): string {
if (!is_long($seite) || $seite < 1) {
return 'Ungültige Seitenzahl.';
}
return 'Verarbeite Seite ' . $seite;
}
echo verarbeiteSeite(3) . PHP_EOL; // OK
echo verarbeiteSeite('3') . PHP_EOL; // Fehler
echo verarbeiteSeite(0) . PHP_EOL; // Fehler
// Wichtig · Fallstricke
Alias: is_long() ist ein vollständiger Alias von is_int(). Es wird empfohlen, bevorzugt is_int() zu verwenden, da dieser Name in modernem PHP-Code weiter verbreitet und lesbarer ist.
Achtung bei numerischen Strings: Werte wie '42' oder '0' geben false zurück, auch wenn sie numerisch aussehen. Soll ein String auf einen ganzzahligen Wert geprüft werden, kann ctype_digit() oder eine Kombination aus filter_var() mit FILTER_VALIDATE_INT sinnvoller sein.