Page 1 sur 1

Image mentale des array()

Posté : 11 juin 2015, 12:36
par westernz
Bonjour,

Je ne suis pas un gros noob, mais coté tableau je rame depuis des années car je n'ai aucune image mental de ce qui se passe.

Auriez vous un tuto ou un lien qui explique avec des image genre tableau excel ce qui ce passe.

Exemple
$toto = array(); // Cela signifie que l'on crée l'équivalent d'un fichier exel avec une seule page, une seul ligne et une seule conole, donc une seule cellule, vide.

$toto[0] = 'ici'; // La ligne 0 contient 'ici'
$toto[1] = 'labas'; // La ligne 2 contient 'labas'

Au dela de cette simplicité je fais du copier coller des mes codes car je me perd.

Bonne journée

Re: Image mentale des array()

Posté : 11 juin 2015, 14:11
par Ryle
Bonjour,

Ce tuto te permettra peut être d'y voir plus clair dans tes tableaux :)
http://openclassrooms.com/courses/conce ... ableaux-43

Re: Image mentale des array()

Posté : 12 juin 2015, 11:49
par westernz
C’est surtout du multidimentionnel qu'il me faut.
Et cherche à avoirt une image mental plus qu'un listing hierarchique mental.
Mais je pense que c'est le mot tableau qui m'a toujours trompé.
array(); ça ressemble plus à une hiérarchie à plusieurs niveaux qu'a un tableau à proprement parlé.

Je pense que l'image mentale se rapproche plus d'un arbre et de ses branches.
A vérifier...

Re: Image mentale des array()

Posté : 12 juin 2015, 11:54
par tof73
un bon moyen de comprendre, c'est de faire un dump de ta variable tableau et de regarder le source généré.

Re: Image mentale des array()

Posté : 12 juin 2015, 12:39
par Ryle
Les tableaux multidimensionnels sont effectivement plus proches des arbres que des tableaux excel :)

Si tu veux une image qui se rapproche d'excel pour mieux concevoir ce que peut être un tableau, il faut imaginer que chaque cellule de ta feuille peut contenir un nouvelle feuille.
Ainsi un tableau a une dimension ne serait qu'une ligne d'excel, à deux dimensions on passe à la feuille et au delà on serait sur plusieurs feuilles, à la différence que celles-ci seraient entièrement liées les unes aux autres et non indépendantes comme c'est le cas pour le tableur.

Mais comme le dit tof, si tu fais un var_dump() ou un print_r() sur un tableau et que tu regardes le code généré (pas celui interprété par le navigateur qui vire les tabulations et retours à la ligne à l'écran, mais bien le code source), tu verras que php le représente sous forme d'arbre plutôt que de s'embêter à gérer un affichage en "tableau" :)
echo '<pre>';
print_r($mon_tableau);
echo '</pre>';

Re: Image mentale des array()

Posté : 17 juin 2015, 17:03
par westernz
Oui, j'ai fini par comprendre. C'est un arbre simplifié. Un cellule contient soit une valeur, soit une autre cellule. Comme un arbre qui contient soit une branche double (en Y disons) soit un fruit. En doublant chaque branche on multiplié les clés (les ancêtres communs).