мне нужно определить постоянной массива в пределах класса, который должен быть использован статически (т.е. я не создавая экземпляр класса класс). Вот пример кода, который работает в PHP5, но не в PHP4:Как я могу определить массив внутри PHP области видимости класса в PHP4
class MyTest {
static $arr = array(100, 200);
function test() {
print_r(MyTest::$arr);
}
}
MyTest::test();
Как я могу изменить этот код, чтобы он работает в PHP4 (4.4.9-PL0-папуасских)?
Примечания:
- Он должен работать в PHP4.
- Мне нужно получить доступ к массиву предпочтительно статическим образом, не создавая экземпляр. Но это требование можно было бы отбросить.
- Я не могу использовать
GLOBALS
, так как код должен работать в пределахphpunit
unit-testing. При этом массив, определенный какGLOBAL
в заголовке файла, не отображается в unittest. - Я хочу определить массив (содержащий постоянные значения) вне функции, которую он использует. Но если не существует другой возможности для решения моего вопроса, это требование также может быть отброшено.
Любая специальная версия PHP4? –
Если вы имеете в виду phpunit (т. Е. Модульные тесты) - зачем вообще использовать 'static'? Это затрудняет тестирование. –
PHP 4.4.9-pl0-gentoo – Alex