【发布时间】:2013-05-26 18:58:29
【问题描述】:
我有一个名为 List 的类,这个类有一个静态方法。当我打电话时:
List::method();
出现以下错误:
syntax error, unexpected '::' (T_PAAMAYIM_NEKUDOTAYIM), expecting '('
php 是否认为我想调用原生函数 list()?我必须重命名课程吗?
【问题讨论】:
-
list是 PHP 保留字......因为你不能有一个与现有函数或构造匹配的类名 -
赞成的问题,因为它是供未来访问者参考的好问题。
-
@MarkBaker 你当然可以,只需要能够通过命名空间运算符告诉标记器将其视为类名而不是语言结构。我仍然不会推荐这样做,但它肯定可能。
-
好吧,除了命名空间,它是一个保留字。正如 OP 所说的 List 而不是 \List,我想我可以原谅