Start · Sprachen · PHP · Referenz · is_long

is_long

Funktion

Prüft, ob der übergebene Wert ein Integer (Ganzzahl) ist — Alias von <code>is_int()</code>.

seit PHP 4.0.0 Kategorie: type

Signatur

is_long(mixed $value): bool

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

Typ
bool
Beschreibung
Gibt 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
bool(true) bool(true) bool(false) bool(false) bool(false) bool(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
Verarbeite Seite 3 Ungültige Seitenzahl. Ungültige Seitenzahl.

// 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.