3 votes

Comment définir une classe avec le même nom que la fonction intégrée ?

Je voudrais définir une classe nommée "Liste" comme ceci :

class List
{
}

PHP donne l'erreur suivante au niveau du fichier de définition de la classe : "Parse error : syntax error, unexpected T_LIST, expecting T_STRING".

Apparemment, il existe une fonction intégrée de php nommée "list()" que l'analyseur lit ici au lieu de la définition de ma classe, même si la ligne commence par le mot clé classe

Comme je n'utilise pas la fonction intégrée dans mon projet, je voudrais la "supprimer/désactiver", afin de pouvoir utiliser ma classe nommée "List".

Est-ce possible en php et comment ?

6voto

daiscog Points 3088

list est un mot réservé car il s'agit d'une construction linguistique (et non d'une fonction), donc non, vous ne pouvez pas le désactiver. Essayez d'être plus spécifique avec votre nom de classe, par exemple, ObjectList ou AbstractList .

6voto

N.B. Points 4951

Le nom de la classe peut être n'importe quel label valide qui n'est pas un PHP. réservé mot .

Liste des mots réservés de PHP dit list est l'un de ces mots.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X