Page 1 sur 1

Indices Tableau 2 dimensions

Posté : 18 juin 2011, 22:53
par chiyo17
Bonsoir à tous,

J'ai une question concernant les tableaux à deux dimensions. Je voudrais affecter des valeurs à un tableau $DATAS ayant n lignes et m colonnes. Lorsque j'écris le code suivant:
		for($i=0;$i<$nbLignes;$i++){
				for($j=0;$j<$nbColonnes;$j++){
					$DATAS[$i][$j]=1;
					echo $DATAS[$i][$j];					
				}
			}
		echo "salut les gens";
L'affichage des cellules de tableaux se passe bien mais l'affichage de "salut les gens" n'apparaît pas. Du coup, le code qui se trouve en dessous de ces boucles fort ne s'affiche pas. Mais si je remplace dans DATAS[$i][$j]=1; l'indice i ou j par une vrai valeur (par exemple 0) alors l'affichage de "salut les gens".

Je vous remercie d'avance pour votre aide.

Bonne soirée

Re: Indices Tableau 2 dimensions

Posté : 18 juin 2011, 22:58
par moogli
salut,

peux tu nous montrer le code complet ? (manque les variables de fin des boucle) ?

tu n'aurais pas créer une boucle infi ?

aucun message d'erreur ?

perso j'ai testé
<?php
$nbLignes	= 12;
$nbColonnes = 12;
for($i=0;$i<$nbLignes;$i++){
	for($j=0;$j<$nbColonnes;$j++){
		$DATAS[$i][$j]=1;
		echo '|',$i,'|',$j,'|'."\r\n";                               
	}
}
echo "salut les gens";
?>
le résultat est

Code : Tout sélectionner

|0|0| |0|1| |0|2| |0|3| |0|4| |0|5| |0|6| |0|7| |0|8| |0|9| |0|10| |0|11| |1|0| |1|1| |1|2| |1|3| |1|4| |1|5| |1|6| |1|7| |1|8| |1|9| |1|10| |1|11| |2|0| |2|1| |2|2| |2|3| |2|4| |2|5| |2|6| |2|7| |2|8| |2|9| |2|10| |2|11| |3|0| |3|1| |3|2| |3|3| |3|4| |3|5| |3|6| |3|7| |3|8| |3|9| |3|10| |3|11| |4|0| |4|1| |4|2| |4|3| |4|4| |4|5| |4|6| |4|7| |4|8| |4|9| |4|10| |4|11| |5|0| |5|1| |5|2| |5|3| |5|4| |5|5| |5|6| |5|7| |5|8| |5|9| |5|10| |5|11| |6|0| |6|1| |6|2| |6|3| |6|4| |6|5| |6|6| |6|7| |6|8| |6|9| |6|10| |6|11| |7|0| |7|1| |7|2| |7|3| |7|4| |7|5| |7|6| |7|7| |7|8| |7|9| |7|10| |7|11| |8|0| |8|1| |8|2| |8|3| |8|4| |8|5| |8|6| |8|7| |8|8| |8|9| |8|10| |8|11| |9|0| |9|1| |9|2| |9|3| |9|4| |9|5| |9|6| |9|7| |9|8| |9|9| |9|10| |9|11| |10|0| |10|1| |10|2| |10|3| |10|4| |10|5| |10|6| |10|7| |10|8| |10|9| |10|10| |10|11| |11|0| |11|1| |11|2| |11|3| |11|4| |11|5| |11|6| |11|7| |11|8| |11|9| |11|10| |11|11| salut les gens


@+

Re: Indices Tableau 2 dimensions

Posté : 24 juin 2011, 19:47
par sirakawa
modifications:
cosmétiques
déplacement des accolades pour en vérifier plus aisément l'appariement
ajout de la déclaration du tableau (je suis un inconditionnel de la déclaration, même à la douane)
changement de l'affectation pour vérifier si le tableau a bien les dimensions voulues
Ton code d'origine fonctionne... Ca c'est ce que j'en ai fait, mais la syntaxe est la même
<?php
$nbLignes = 12;
$nbColonnes = 12;
$datas = array();
for ($i = 0; $i < $nbLignes; $i++)
{
for ($j = 0; $j < $nbColonnes; $j++)
{
$datas[$i][$j]= "ligne ".$i."colonne ".$j."<br>";
echo $datas[$i][$j];
}
}
echo "salut les gens";
?>

Re: Indices Tableau 2 dimensions

Posté : 24 juin 2011, 21:00
par moogli
modifications:
cosmétiques
déplacement des accolades pour en vérifier plus aisément l'appariement
ajout de la déclaration du tableau (je suis un inconditionnel de la déclaration, même à la douane)
changement de l'affectation pour vérifier si le tableau a bien les dimensions voulues
?>
hum l'emplacement des accolades a la lignes en dessous n'est pas forcement plus clair, tout editeur de texte (potable) permettent de retrouver la seconde accolade, parenthèse, crochet etc

inconditionnel de la déclaration, pourquoi pas même si c'est inutile, perso je préfère l'indentation c'est plus utile ;)

il me semblait avoir indiqué que son code fonctionnait non ?

bref deuxième post inutile ... :mrgreen:

Re: Indices Tableau 2 dimensions

Posté : 25 juin 2011, 22:47
par sirakawa
Bravo ,les ayatollas...
Non, tu n'avais pas dit que son code fonctionnait, et de plus ce n'était pas son code...
Quant au déplacement des accolades, il permet de repérer visuellement les appariements. C'est une vieille habitude héritée en particulier de la pratique de LISP où les paires de parenthèses ne sont pas toujours évidentes à repérer...