Строитель, спасибо) Это гениально!) Просто и гениально, я даже не подумал что достаточно создать статичный метод конструктора) Не могу сказать "спасибо", недостаточно комментариев (Добавление)
Пораскинув мозгами пришел к выводу переделать слегка функционал. Теперь свойство $variables используется а-ля кэш. Вместо него есть метод variablesInit($key) который через свитч либо ищет в $variables данные либо генерит их, сохраняет в $variales и возвращает.
OrmaJever, просто я хотел узнать, это два разных способа или просто два вида вызова одного и того же функционала. Если два разных то в чем разница.
Знаю что есть функция call_user_func_array, но в ней очевидна разница, а тут нет.
Доброго времени суток.
В общем. Если опустить подробности, то есть строка, в которую приходит имя функции. Раньше вопрос решался через case, но решили упростить, и теперь встал вопрос выбора метода решения.
1 способ:
Этот чудо метод меня очень сильно удивил. Он выглядит крайне симпатично, но что-то вызывает сомнения.
На самом деле, с коллегами сошлись на мнении, что скорее всего они взывают к одной и той же функциональности, лишь вызов разный. Но интересно мнение Вас, форумчане
Вадим Васильев, точно - это я не учёл. Тогда почему именно статические свойства и методы? Напишите обычный класс. В чем проблема? Вы не хотите создавать экземпляр класса вне класса?
Не то что бы не хочу .. Просто, думал, вдруг, есть статичный способ
Скорее для общего развития, нежели из-за какого-то принципа.
Доброго времени суток.
В общем есть код-шаблонизатора, написан в процедурном стиле. Хочу переписать его на ООП, но возникает множество вопросов, а точнее проблем. (весь код представленный ниже лишь легкий аналог, тк оригинал большой)
Пытаюсь перевести все в ООП. Создаю статичные свойства, которые через self:: вызывают статичный метод, статичный метод в свою очередь вызывает статичное свойство (только сейчас подумал что какая то путоница, но в процедурке работает как часы)