如何在PHP4中的PHP类范围内定义数组

时间:2013-08-28 13:55:34

标签: php php4

我需要在一个类的范围内定义一个常量数组,该数组将被用于静态(即我不创建该类的实例)。以下示例代码在PHP5中有效,但在PHP4中无效:

class MyTest {
    static $arr = array(100, 200);
    function test() {
        print_r(MyTest::$arr);
    }
}

MyTest::test();

如何更改此代码以使其在PHP4(4.4.9-pl0-gentoo)中有效?

备注:

  • 它必须在PHP4中工作。
  • 我需要以静态方式访问数组,而不需要创建实例。但是这个要求可能会被取消。
  • 我无法使用GLOBALS,因为代码必须在phpunit单元测试中工作。这样做时,在unittest中看不到文件头中定义为GLOBAL的数组。
  • 我想在正在使用的函数之外定义数组(包含常量值)。但如果没有其他可能性来解决我的问题,那么这个要求也可能会被删除。

1 个答案:

答案 0 :(得分:2)

class MyTest {
    public function getArray() {
        return array(100, 200);
    }
}

不太好,但你可以简单地调用MyTest::getArray()而无需在类中创建实例(或$this->getArray())来检索数据。