Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1395 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Tableau à 2 dimensions

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Tableau à 2 dimensions

n°1283088
Cat Mary
Posté le 13-01-2006 à 16:13:20  profilanswer
 

Bonjour,
 
Après avoir cherché sur plusieurs sites, je ne comprends pas comment déclarer un tableau php à 2 dimensions ( 30 lignes, 5 colonnes). La plupart des sites montrent des exemples avec initialisation lors de la création, alors que je ne veux pas l'initialiser à la création car je veux l'initialiser à partir d'une requête mysql.
 
En vous remerciant d'avance pour votre aide.

mood
Publicité
Posté le 13-01-2006 à 16:13:20  profilanswer
 

n°1283097
omega2
Posté le 13-01-2006 à 16:24:01  profilanswer
 

Cat Mary > En php, on ne déclare pas le nombre de dimension ni la taille maximale du tableau. On peut déclarer un tableau en faisant un

Code :
  1. $tab= array();

Cette ligne de code donne le type tableau à la variable $tab sans lui affecter de contenu (mais tout son contenu est perdus)
 
En fait, en php, il n'existe pas à proprement parlé de tableau à deux dimension, mais des tableaux de tableaux. En clair, un tableau dont chaque case contient un autre tableaux. Ca permet de créer des structure plus souple. (mais plus bordélique aussi si on fait n'importe quoi)
Pour créer une case dans le second niveau d'imbrication, il suffit de faire un

Code :
  1. $tab[n][m]="mavaleur"

(n et m devant être remplacé par un nombre ou une chaine de caractére)
ATTENTION : Si $tab[n] n'existe pas avant cette ligne, php générera une alerte (warning) qui sera affiché en fonction du réglage error_reporting du php.ini. Pour éviter ça, il faut vérifier l'existance à l'aide d'un isset($tab[n]) et initialisé cette case comme un tableau vide au besoin.


Message édité par omega2 le 13-01-2006 à 16:25:54
n°1283107
Cat Mary
Posté le 13-01-2006 à 16:36:26  profilanswer
 

Merci omega2. donc je déclare mon tableau : "$tab=array(array());", et donc après est-ce que je peux directement mettre par exemple : "$tab[1][1]=4" ?

n°1283115
anapajari
s/travail/glanding on hfr/gs;
Posté le 13-01-2006 à 16:45:07  profilanswer
 

Cat Mary a écrit :

Merci omega2. donc je déclare mon tableau : "$tab=array(array());", et donc après est-ce que je peux directement mettre par exemple : "$tab[1][1]=4" ?


en fait tu peux même mettre directement $tab[1][1]=4 sans déclarer ton tableau ... c'est la beauté du php :o

n°1283122
omega2
Posté le 13-01-2006 à 16:48:59  profilanswer
 

array() une seule fois déclare un tableau, array(array()) déclare un tableau d'une case dont cette table contient un tableau vide.
 
Array() permet de créer un tableau dont le contenu des cases est mis dans les parentaises avec une virgule comme séparateur de contenu de case.
 
je sais, j'aurais du te le dire plus tôt. En fait, j'aurais du te renvoyer dessuite à la documentation pour plus d'information. ( http://www.nexen.net/docs/php/anno [...] .array.php ) Et n'hésite pas non plus à lire des tutoriels, ils sont là pour quand on débute.
 
Si tu veux vraiment initialiser tes 30 cases, il faut déclarer ton premier niveau de tableau et ensuite initialisé chacune des 30 cases. mais un truc à savoir, en php, on a pas besoin de déclarer au début du script les différentes variables qu'on va utiliser ni de quel type elles sont : quand on leur donne une valeur, ca déclare automatiquement la variable avec le type de valeur correspondant.

n°1283131
Cat Mary
Posté le 13-01-2006 à 16:55:20  profilanswer
 

ah ok, merci je vais lire cette doc et essayer


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Tableau à 2 dimensions

 

Sujets relatifs
retourneer un tableau à 2 dimensionsaffichage d'un tableau à 2 dimensions
tableau à 2 dimensions et pointeurTableau associatif trois dimensions...
table MySQL dans tableau (à 2 dimensions?)[VBS] Redimensionner un tableau a plusieurs dimensions
trier un tableau à 2 dimensions de caracteresdimensions tableau
[ C++ ] Passer par adresse un vecteur à 2 dimensions + malloccorrespondance tableau deux dimensions - gridlayout [résolu]
Plus de sujets relatifs à : Tableau à 2 dimensions


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR