2010-01-06 3 views
6

je le code suivant dans les contrôleurs/list.php:Essayer de faire un contrôleur CodeIgniter appelé "Liste"

<?php 
class List extends Controller { 
    function index() 
    { 
     echo "hi"; 
    } 
} 
?> 

Cependant, en essayant d'accéder il me donne l'erreur PHP suivante:

parse error: erreur de syntaxe, T_LIST inattendue, T_STRING attendant à /var/www/sitename/htdocs/system/application/controllers/list.php en ligne

Renommer le fichier "example.php" et remplacer "class List" par "class Example" fonctionne parfaitement bien ... ma première pensée était peut-être que "List" était un nom réservé, mais j'ai vérifié la liste des noms réservés de CI here et Ce n'est pas là.

Je sais que je pourrais résoudre le problème en appelant simplement quelque chose d'autre mais je veux vraiment que mon contrôleur soit appelé "liste" si possible. Des idées, ou un aperçu de la raison pour laquelle cela se produit?

Merci,
Mala

Répondre

14

list est un mot réservé en PHP, vous devrez utiliser autre chose. Vous pouvez probablement utiliser une route personnalisée pour changer l'URL si vous en avez vraiment besoin.

+5

fait la même erreur ... je pense que tout le monde fait cette erreur au moins une fois. – gsueagle2008

+0

Ouais c'est un vrai bummer - le mot "liste" a été totalement gaspillé sur une construction de langage bizarre pour assigner des variables multiples variables dans une seule déclaration. –

Questions connexes