is_scalar
funkcja
Sprawdza, czy wartość jest typem skalarnym: int, float, string lub bool. Zwraca false dla tablic, obiektów i null.
is_scalar(mixed $value): bool
is_scalar zwraca true dla czterech typów skalarnych PHP: int, float, string i bool. Wszystko inne — tablice, obiekty, null i zasoby (resource) — daje false. Pamiętaj, że null nie jest typem skalarnym w PHP, choć bywa z nimi mylony. Funkcja przydaje się przy walidacji danych wejściowych, gdy akceptujesz dowolną wartość prostą, ale chcesz odrzucić struktury złożone.
<?php
declare(strict_types=1);
class Ksiazka {}
$testy = [42, 3.14, 'tytuł', true, false, [], new Ksiazka(), null];
foreach ($testy as $v) {
$label = gettype($v);
$wynik = is_scalar($v) ? 'true' : 'false';
echo "$label => $wynik\n";
}
// integer => true
// double => true
// string => true
// boolean => true
// boolean => true
// array => false
// object => false
// NULL => false