array dans une classe?

array dans une classe? - PHP - Programmation

Marsh Posté le 28-01-2003 à 11:37:44    

comment ca marche? :??:
j'ai fait un truc qui me paraissait logique mais ca marche pas :(
 
 

Code :
  1. <?// test arrays in classes
  2. class A
  3. {
  4.   var $queue;
  5.   function A($val)
  6.   {
  7.     $this->queue = array($val);
  8.   }
  9.   function add($val)
  10.   {
  11.     $this->queue[] = $val;
  12.   }
  13.   function display()
  14.   {
  15.     echo "<p>count  : ".count($this->$queue)."<br>";
  16.     echo    "content: ".array_values($this->queue)."<p>";
  17.   }
  18. }
  19. $Aobj = new A(1);
  20. $Aobj->display();
  21. $Aobj->add(2);
  22. $Aobj->display();
  23. $Aobj->add(3,4);
  24. $Aobj->display();
  25. ?>

 
 
mon tableau reste vide. comment faire? please.

Reply

Marsh Posté le 28-01-2003 à 11:37:44   

Reply

Marsh Posté le 28-01-2003 à 11:49:30    

Code :
  1. <?// test arrays in classes
  2. class A
  3. {
  4.   var $queue= array();
  5.   function A($val)
  6.   {
  7.     $this->queue[] = $val;
  8. //ou array_push($this->queue, $val)
  9.   }
  10.   function add($val)
  11.   {
  12.     $this->queue[] = $val;
  13. //ou array_push($this->queue, $val)
  14.   }
  15.   function display()
  16.   {
  17.     echo "<p>count  : ".count($this->$queue)."<br>";
  18.     echo    "content: ".print_r(array_values($this->queue))."<p>";
  19.   }
  20. }
  21. $Aobj = new A(1);
  22. $Aobj->display();
  23. $Aobj->add(2);
  24. $Aobj->display();
  25. //$Aobj->add(3,4); pas possible, sauf $Aobj->add("3,4" ); avec un explode(',', $val) dans fct add($val)
  26. $Aobj->display();
  27. ?>


Message édité par ethernal le 28-01-2003 à 11:51:21
Reply

Marsh Posté le 28-01-2003 à 12:06:36    

merci :jap:
 
je m'étais surtout planté là : count($this->$queue)  
g du mal ce matin... :sarcastic:  


Message édité par xmulder le 28-01-2003 à 12:07:19
Reply

Marsh Posté le 28-01-2003 à 12:24:50    

arf vi :D
moi aussi je dors un peu, j'ai pas fais gaffe... :lol:

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed