Php : class tableau [Résolu/Fermé]

Signaler
Messages postés
64
Date d'inscription
jeudi 18 décembre 2003
Statut
Membre
Dernière intervention
8 juillet 2008
-
Messages postés
64
Date d'inscription
jeudi 18 décembre 2003
Statut
Membre
Dernière intervention
8 juillet 2008
-
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();
?>

2 réponses

Messages postés
434
Date d'inscription
mardi 1 juin 2004
Statut
Membre
Dernière intervention
15 décembre 2008
379
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
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 60511 internautes nous ont dit merci ce mois-ci

Messages postés
64
Date d'inscription
jeudi 18 décembre 2003
Statut
Membre
Dernière intervention
8 juillet 2008
10
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
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 60511 internautes nous ont dit merci ce mois-ci