> 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

Comment cerner la maturité digitale de votre entreprise ?

Comment cerner la maturité digitale de votre entreprise ?

Conçu pour les directions IT et Métiers, ce guide vous permettra d'évaluer précisément vos processus de communication client, d'identifier vos lacunes et points d'inflexion pour établir un plan d’actions capable de soutenir durablement votre évolution. Bénéficiez maintenant d'une feuille de route complète.

Tech - Par iTPro - Publié le 30 mars 2012