probleme classe

Invité
Invité n'ayant pas de compte PHPfrance

07 juil. 2005, 18:34

Bonjour, je suis nouveau sur PHP, voila j'essaie ma premiere classe en PHP :
<?php 
class Point 
{ 
   var $x; 
   var $y; 
    
   function Point() 
   { 
    $this->$x = 2; 
    $this->$y = 4; 
   } 
} 

$p = new Point(); 
echo("x = " . $p->$x); 
?> 
Simple non? mais voila le probleme: cela m'affiche:

x = 4

si quelqu'un peut m'aider, je vous remercie d'avance

Eléphant du PHP | 104 Messages

07 juil. 2005, 18:40

Salut,

Ton exemple montre au moins deux choses, que tu dois revoir la syntaxe PHP et le développement objet en général. Il faut mettre de l'ordre dans tes objectifs, tes désirs et voir par quels moyens y parvenir.

Il te faut trouver un support (tutorial), un livre éventuellement et consulter la documentation de PHP.

Mammouth du PHP | 19672 Messages

07 juil. 2005, 18:43

C'est en effet un effet curieux parce que tu essayes en fait d'afficher le contenu de la variable de classe $x en 'appelant à la manière d'une méthode de classe. Il ne faut pour faire ça pas utiliser le "$" devant le nom de la variable, MÊME PAS lors de l'instanciation:
<?php
class Point
{
    var $x;
    var $y;

    function Point()
    {
        $this->x = 2;
        $this->y = 4;
    }
}

$p = new Point();
echo("x = " . $p->x);
?>
Là, ton script va re retourner ce que tu attends à savoir "x = 2"
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Invité
Invité n'ayant pas de compte PHPfrance

07 juil. 2005, 18:54

Merci beaucoup