Php : class tableau

Résolu
Bonjour,

j'exécute le code PHP4 ci dessous.

C'est une classe qui devrait créer un tableau et le programme lui affecte des valeurs ('zéro', 'un','deux').
Et bien, impossible de voir le contenu du tableau.

Je dois avoir faux quelque part, mais je ne vois pas où.

Si vous pouviez m'aider, j'en serai bien content :)

Merci de votre aide.


-----------------------------

<?php

class tableau {

var $colonne = array();
var $nombre;

function voir_tableau(){
for ($i=0;$i<$this->nombre;$i++){
echo "$this->colonne[$i], ";
} }

function ajouter($valeur){
array_push($this->colonne,$valeur);
}

} // fin classe tableau

$t = new tableau();

$t->nombre = 3;
$t->colonne = array(0 => 'zéro');
$t->colonne = array(1 => 'un');
$t->colonne = array(2 => 'deux');

$t->voir_tableau();
?>
A voir également:

2 réponses

GallyNet Messages postés 434 Date d'inscription   Statut Membre Dernière intervention   387
 
Effectivement il y a des probleme sur ta programmation.

D'abord, il est conseillé de faire les initialisation de tes variables dans le constructeur :
class tableau {
  var $colonne;
  var $nombre;
  function tableau(){
    $this->colonne=array();
  }
}


Ensuite, a chaque fois que tu fait:
$t->colonne = array(0 => 'zéro'); 

tu créer un nouveau tableau d'une seul valeur qui écrase l'ancienne valeur. Tu n'aura jamais qu'une seul valeur dans ton tableau.
$t->colonne = array(0 => 'zéro',1 => 'un',2 => 'deux'); 
1

 
J'ai trouvé !

Cela vien du fait que j'utilise
echo "$this->colonne[$i], ";

au lieu de

echo $this->colonne[$i].", ";

dans ce dernier cas, la valeur est affichée correctement.

Merci de ton aide.
1