intval

funkcja

Konwertuje wartość na liczbę całkowitą int, opcjonalnie z podaną podstawą systemu liczbowego.

intval(mixed $value, int $base = 10): int

intval zamienia $value na int. Dla stringów czyta cyfry od początku i zatrzymuje się na pierwszym znaku niebędącym cyfrą — "42px" daje 42, a "abc" daje 0. Parametr $base pozwala parsować liczby w innym systemie liczbowym (np. 16 dla szesnastkowego).

<?php
declare(strict_types=1);

echo intval('42px');       // wynik: 42
echo intval('  7.9');      // wynik: 7  (bierze część całkowitą)
echo intval('abc');        // wynik: 0
echo intval('0x1A', 16);   // wynik: 26
echo intval(true);         // wynik: 1
echo intval(null);         // wynik: 0

Uwaga: w trybie strict_types=1 rzutowanie (int) i intval zachowują się tak samo wobec stringów — żadne z nich nie rzuca wyjątku dla wartości mieszanych. Jeśli oczekujesz wyłącznie int, lepiej używaj deklaracji typów w sygnaturach funkcji i pozwól PHP na TypeError.

📘 Naucz się w lekcji →