array_flip în PHP

Schimbă între ele cheile și valorile unui tablou.

Sintaxă
array_flip(array $array): array

Ce face array_flip

array_flip face din fiecare valoare o cheie și din fiecare cheie o valoare. Dacă o valoare apare de mai multe ori, rămâne doar ultima cheie.

Un truc frecvent: cu array_flip transformi o listă într-un tablou în care cauți rapid cu isset, mult mai repede decât cu in_array pe liste mari.

Parametri

Parametru Descriere
$array Tabloul inversat. Valorile trebuie să fie întregi sau texte.

Ce returnează

Tabloul cu cheile și valorile schimbate.

Exemple

Exemplul 1: Inversare simplă

<?php
$coduri = ["IS" => "Iași", "CJ" => "Cluj"];

print_r(array_flip($coduri));

Rezultat

Array
(
    [Iași] => IS
    [Cluj] => CJ
)

Exemplul 2: Căutare rapidă cu isset

<?php
$interzise = array_flip(["admin", "root", "test"]);

$nume = "root";
if (isset($interzise[$nume])) {
    echo "Numele $nume nu este permis.";
}

Rezultat

Numele root nu este permis.

Greșeli frecvente

  • Tabloul conține valori care nu sunt text sau întregi (null, numere cu zecimale, tablouri). Sunt sărite și primești avertismentul Can only flip string and integer values.

Comenzi înrudite

  • array_combine: Construiește un tablou asociativ din două liste: una cu cheile și una cu valorile.
  • array_search: Caută o valoare într-un tablou și returnează cheia la care a găsit-o.
  • isset: Verifică dacă o variabilă există și nu are valoarea null.