PHP数组,我可以定义自己的Array类吗?

时间:2012-02-05 01:15:24

标签: php arrays class object

我可以在 PHP 5.3.2 中看到有一个 ArrayObject 类。是否可以声明一个名为Array

的新对象

扩展 ArrayObject 。但我不确定'数组'是保留关键字还是应该使用我自己的前缀,即 XArray(),MyArray 等...

我想拥有的是

class Array extends ArrayObject {

...my own code

}

3 个答案:

答案 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类名称不区分大小写。