> Tech > Les matrices associatives

Les matrices associatives

Tech - Par iTPro - Publié le 30 mars 2012
email

Je ne voudrais pas vous quitter sans parler brièvement de l’une de mes fonctions favorites : les matrices associatives.

Les matrices associatives

Une matrice associative est celle dans laquelle les éléments de la matrice ne sont pas indexés par leur position ordinale mais par une clé. En réalité, sous le capot, même des matrices telles que $languages sont des matrices associatives où l’index numérique est la clé associée.

Pour démontrer ce point, je vais changer la définition de $languages pour faire du nom du langage courant l’index (clé), et de la valeur réelle le nombre d’années d’expérience avec le langage. La nouvelle définition se présenterait ainsi :
$languages = array(« RPG IV »=> 16, « PHP »=> 3, « Java » => 10, …);
A noter que le symbole « pointer vers » est utilisé pour « associer » la clé (« RPG IV ») avec sa valeur (16).

Si je voulais inclure la clé et la valeur dans la liste de l’expérience du langage (après tout, le nombre d’années en lui-même n’a pas beaucoup d’intérêt), je devrais modifier l’opération foreach de la façon suivante :

foreach ($language as $name=>$years) {
   print « $name for $years years<br> »;
}

Normalement, vous devriez comprendre comment cette syntaxe fonctionne. Elle dit que pour chaque élément à tour de rôle, PHP devrait assigner la clé à la variable $name et la valeur « vers laquelle il pointe » à $years. Ensuite, je sors simplement les deux variables. Ça ne pourrait pas être plus facile. Et c’est certainement plus simple et plus puissant que les matrices alternées de RPG. Pour accéder directement aux éléments d’une telle matrice — vous le devinez probablement — je code simplement la clé en tant qu’index. Autrement dit, $languages[« RPG IV »] renverra la valeur entière 16.

Vous observerez que dans la version complète du script modifié (figure 2), j’ai aussi décidé d’utiliser les deux éléments caractère et entier dans la même matrice (D en figure 2). (Les renvois de la figure 2 référencent les mêmes points que ceux de la figure 1). Quand vous exécuterez le script, vous devrez vérifier la différence obtenue dans la sortie var_dump().

J’espère que vous avez aimé cette première incursion dans le monde PHP. La prochaine fois, je plongerai dans les structures de contrôle PHP telles que if/else, for et while. Et maintenant que vous connaissez les principes de base de la sortie sur navigateur, je vous montrerai quelques fonctions de PHP pour traiter l’entrée des pages web.

Téléchargez gratuitement cette ressource

HP Elite Slice G2 : optimisez la collaboration… et votre budget !

HP Elite Slice G2 : optimisez la collaboration… et votre budget !

Téléchargez cette étude Forrester et découvrez comment booster la collaboration tout en dégageant un excellent R.O.I grâce au système de vidéoconférence HP Elite Slice G2 avec Microsoft Teams !

Tech - Par iTPro - Publié le 30 mars 2012