我可以在 PHP 5.3.2 中看到有一个 ArrayObject 类。是否可以声明一个名为Array
的新对象扩展 ArrayObject 。但我不确定'数组'是保留关键字还是应该使用我自己的前缀,即 XArray(),MyArray 等...
我想拥有的是
class Array extends ArrayObject {
...my own code
}
答案 0 :(得分:8)
您所要做的就是尝试运行:
<?php class Array {}
你会看到:
Parse error: syntax error, unexpected 'Array'
所以答案是,不,你不能。您需要使用其他名称。
答案 1 :(得分:1)
如果它现在正常工作,它可能会在将来创建一个Array
类。最好只是远离那些明显符合语言定义的名称。
编辑:马修指出,它不起作用。看到他的回答让我意识到为什么它不起作用:array
是php中的关键字(允许你创建数组文字),关键字在php中不区分大小写。
答案 2 :(得分:0)
我不确定'Array'是否为保留关键字
这很容易检查。 PHP's list of reserved keywords列出了“array()”前面和中心。
该页面还列出了以下指南:
您不能将以下任何字词用作常量,类名,函数或方法名称。将它们用作变量名通常是可以的,但可能会导致混淆。
所以不,你不能。您需要将您的类重命名为其他名称,并且您的名称必须区别于letter-casing,因为PHP类名称不区分大小写。