ARRAY_FLIP |
Flip du tableau |
PHP 4+ |
Syntaxe
function array_flip($trans);
|
Paramètres
Nom |
Description |
$trans |
Ce paramètre permet d'indiquer le tableau contenant les clefs et les valeurs à inverser |
Retour
Valeur |
Description |
tableau |
Ces éléments sont l'inversion des tableaux passé en paramètre. |
Description
Cette fonction permet d'échanger les valeurs des clefs et des valeurs dans un tableau.
Remarques
- Inversion des clefs et des valeurs : La fonction array_flip() prend un tableau en entrée et échange ses clefs et valeurs. Cela signifie que les anciennes
valeurs deviennent les nouvelles clefs, et les anciennes clefs deviennent les nouvelles valeurs. Cependant, si une valeur apparaît plusieurs fois dans le tableau, seule la
dernière occurrence sera conservée, car les clés doivent être uniques.
- Limitation de l'unicité des clefs : Comme PHP nécessite que les clefs d'un tableau soient uniques, l'utilisation de valeurs dupliquées dans le tableau
d'entrée entraînera la perte de données. Seule la dernière valeur dupliquée sera conservée comme clef, ce qui peut être problématique dans certains cas.
- Prise en charge des valeurs scalaires : array_flip() fonctionne uniquement avec des valeurs scalaires (chaînes de caractères, entiers,...). Si un tableau contient
des valeurs complexes comme des tableaux ou des objets, une erreur sera générée. Cela limite son utilisation pour des tableaux contenant des types de données plus complexes.
- Renvoi d'un tableau associé : La fonction retourne un nouveau tableau avec les clefs et les valeurs inversées. Le tableau résultant a les anciennes valeurs comme
clefs, et les anciennes clefs comme valeurs. Si les anciennes valeurs ne peuvent pas être utilisées comme clefs (par exemple, des tableaux ou des objets), PHP les ignore ou
génère des erreurs.
- Performance : L'opération de basculement des clefs et des valeurs peut avoir un impact sur la performance pour de très grands tableaux. Étant donné que chaque
élément doit être traité, cela peut entraîner une utilisation accrue de la mémoire et un temps de traitement plus long, en particulier avec de grands jeux de données.
- Utilisation dans des cas pratiques : array_flip() est souvent utilisé lorsque vous avez un tableau de clefs et de valeurs et que vous souhaitez rapidement
obtenir l'inverse, par exemple pour rechercher les clefs associées à une valeur spécifique. Cela est très utile dans le cadre de la gestion de configurations ou de l'indexation
de données.
- Manipulation des clefs d'un tableau associatif : L'une des applications classiques de array_flip() est la transformation d'un tableau associatif en un
tableau où les valeurs servent de nouvelles clefs. Cela permet de simplifier certaines recherches, mais la perte d'information due à des clés dupliquées est un point de
vigilance.
- Compatibilité avec les chaînes et entiers uniquement : Lors de l'utilisation de array_flip(), seules les chaînes de caractères et les entiers peuvent être
utilisés comme clefs dans le tableau retourné. Si des valeurs dupliquées sont présentes et qu'elles ne peuvent pas être converties en clés uniques (par exemple, des tableaux
imbriqués), cela peut entraîner une perte d'information ou un comportement inattendu.
Références
PHP 4 - Guide du développeur, Edition First Interactive, Blake Schwendiman, 2002, ISBN: 2-84427-283-5, page 359
Dernière mise à jour : Dimanche, le 22 mars 2015