Статический массив объектов

dimagolov

Новичок
Статический массив объектов

Собственно есть класс и в нем статическое свойство-массив. Элементами массива должны быть объекты.
PHP:
	private static $rgprop= array (
ipropBold 			=> new PROP(actnByte,   propChp,    'fBold'),       // ipropBold
ipropItalic 		=> new PROP(actnByte,   propChp,    'fItalic'),     // ipropItalic
);
получаем syntax error, unexpected T_NEW
если индекс не указывать, по получается то же самое.
Вопрос в том, а как объявить и проинициализировать статическое свойство-массив с объектами в качестве элементов?
 
Получать массив через метод, в котором инициализировать его при первом обращении?
 
triumvirat
Речь идет о статическом свойстве. Так что конструктор немного не в кассу)))
 
Bitterman
тогда я вообще не уверен, что dimagolov в правильном направлении движется.

ИМХО, любые свойства класса должны инициализироваться в методах.
 
не, так как свойство private то как раз конструктор катит, так как ДО его вызова все равно никто дотянуться до свойствав не сможет... кроме статических методов, правда. то есть в них тоже надо инициализировать, не только в конструкторе.
выходит что если требуется публичное свойство, то надо его через ф-ю отдавать, а не на прямую, чтобы гарантировать инициализацию.

-~{}~ 22.12.08 09:02:

это rft парсер и этот массив - набор констант, которые пользуются при распарсивании ключевых свойств. я для простоты в массивы переделал вместо объектов, так как контроль корректности значений важен один раз - при добавлении нового ключевого слова в набор.
 
dimagolov
ИМХО, свойства лучше всегда передавать и получать через методы вне зависимости от того, нужна инициализация или нет. Исключение разве что для внутренних данных и то, не всегда.
 
Сверху