is_countable în PHP

Verifică dacă o valoare poate fi numărată cu count: un tablou sau un obiect Countable.

Sintaxă
is_countable(mixed $value): bool

Ce face is_countable

Din PHP 8, count pe o valoare nepotrivită (null, text, număr) aruncă TypeError. is_countable verifică înainte dacă count va funcționa.

Returnează true pentru tablouri și pentru obiectele care implementează Countable (de exemplu ArrayObject). Generatoarele nu sunt numărabile.

Parametri

Parametru Descriere
$value Valoarea verificată.

Ce returnează

true sau false.

Exemple

Exemplul 1: Ce se poate număra

<?php
var_dump(is_countable([]));
var_dump(is_countable(new ArrayObject([1, 2])));
var_dump(is_countable(null));
var_dump(is_countable("abc"));

Rezultat

bool(true)
bool(true)
bool(false)
bool(false)

Exemplul 2: Numărare sigură

<?php
$raspunsApi = null;

$total = is_countable($raspunsApi) ? count($raspunsApi) : 0;
echo "Rezultate: $total";

Rezultat

Rezultate: 0

Greșeli frecvente

  • Apelezi count($x) pe o valoare care poate fi null. În PHP 7 primeai doar un avertisment, în PHP 8 scriptul se oprește cu TypeError.

Comenzi înrudite

  • count: Returnează numărul de elemente dintr-un tablou.
  • is_iterable: Verifică dacă o valoare poate fi parcursă cu foreach: un tablou sau un obiect Traversable.
  • is_array: Verifică dacă o valoare este un tablou (array).