in_array în PHP

Verifică dacă o valoare se află într-un tablou.

Sintaxă
in_array(mixed $cauta, array $tablou, bool $strict = false): bool

Ce face in_array

in_array caută o valoare printre elementele tabloului. Dacă o găsește, returnează true.

Activează mereu parametrul $strict când tipul contează. Altfel, PHP poate considera egale valori diferite, de exemplu "1" și 1.

Parametri

Parametru Descriere
$cauta Valoarea căutată.
$tablou Tabloul în care se caută.
$strict Opțional. true compară și tipul (ca ===).

Ce returnează

true sau false.

Exemple

Exemplul 1: Verificarea unei extensii permise

<?php
$permise = ["jpg", "png", "webp"];
$extensie = "gif";

if (!in_array($extensie, $permise)) {
    echo "Tipul de fișier .$extensie nu este permis.";
}

Rezultat

Tipul de fișier .gif nu este permis.

Exemplul 2: Diferența dată de modul strict

<?php
$coduri = ["1", "2", "3"];

var_dump(in_array(1, $coduri));
var_dump(in_array(1, $coduri, true));

Rezultat

bool(true)
bool(false)

Greșeli frecvente

  • Cauți o cheie cu in_array. Funcția caută doar în valori. Pentru chei folosește array_key_exists.

Comenzi înrudite

  • array_key_exists: Verifică dacă o cheie există într-un tablou, chiar dacă valoarea ei este null.
  • array_search: Caută o valoare într-un tablou și returnează cheia la care a găsit-o.
  • str_contains: Verifică dacă un text conține alt text. Returnează true sau false.