RSS
people

Parse error: syntax error, unexpected T_PAAMAYIM_NEKUDOTAYIM

Voici une erreur PHP des plus énigmatiques. Qu’est-ce donc que ce mystérieux T_PAAMAYIM_NEKUDOTAYIM ? Ne cherchez pas plus loin, il s’agit simplement d’une erreur en hébreu. Pour tous ceux qui ne parlent pas l’hébreu couramment, cela signifie : “deux points inattendus”. Explication…

Cette erreur est dû si vous appellez un attribut non statique d’une façon statique. Par exemple, soit le code suivant.

class Lapin
{
    private $couleur;
    private static $nb_lapins = 0;

    public function __construct($couleur = ‘blanc’)
    {
        if($this::nb_lapins)    throw new Exception(‘Trop de lapins !’);
        else
        {
            // …
        }
    }
}

Outre ce code assez original (je n’ai encore jamais codé de classe Lapin), nous pouvons voir que nous tentons d’accèder d’une manière non statique à un attribut statique ($this->nb_lapins). D’où le problème et cette erreur. Afin de la corriger, il vous suffit de remplacer le double deux points par une flèche. Et c’est tout.

Le PHP, un langage de rigolos ? ;)

Diffusez cet article :
  • Facebook
  • Google
  • Fleck
  • Live
  • Scoopeo
  • Taggly
  • Technorati
  • TwitThis
  • Wikio FR
  • YahooMyWeb

Déjà une réaction ! to “Parse error: syntax error, unexpected T_PAAMAYIM_NEKUDOTAYIM”

  1. soso Says:

    Ca me laisse sans voix un message d’erreur pareil :)

Réagir