ФорумПрограммированиеPHP для идиотов → Можно ли получить все методы объекта?

Можно ли получить все методы объекта?

  • stopkran

    Сообщения: 53 Репутация: N Группа: Кто попало

    Spritz 4 февраля 2012 г. 6:27

    Есть несложная cms. Админ может указывать в отдельном поле имя шаблона для вывода конкретной страницы. Шаблонов обычно всего 2-3 (типа page1, page2…), но всё равно редакторы ухитряются писать в поле шаблона слова типа "Дед Мороз", и в шаблонизатор передаётся вызов метода "Дед Мороз" (который там грубо заменяется методом по умолчанию).

    Хочу заменить простое поле ввода выпадающим списком. Вопрос: откуда получить данные для этого списка? можно ли как-то получить из класса шаблонизатора список всех существующих методов, чтобы потом из этого списка сделать dropbox?

    Да, пробовал так:

    $tp = new View();
    print_r($tp);

    - выводит пустой View Object ( ) или Array ( ) (после попытки преобразования).
  • phpdude

    Сообщения: 26617 Репутация: N Группа: в ухо

    Spritz 4 февраля 2012 г. 6:33, спустя 5 минут 37 секунд

    print_r($tp);

    удивился что не работает то?)

    http://ru2.php.net/manual/ru/reflectionclass.getmethods.php
    Сапожник без сапог
  • artoodetoo

    Сообщения: 5138 Репутация: N Группа: в ухо

    Spritz 4 февраля 2012 г. 8:33, спустя 2 часа 50 секунд

    Следующий вопрос будет "как заменить имена методов на осмысленные названия?". Блядь, дай ему на вход ассоциативный массив, класс != ООП.
    ιιlllιlllι унц-унц
  • phpdude

    Сообщения: 26617 Репутация: N Группа: в ухо

    Spritz 4 февраля 2012 г. 10:00, спустя 1 час 26 минут 56 секунд

    стопхлам xDD
    Сапожник без сапог
  • stopkran

    Сообщения: 53 Репутация: N Группа: Кто попало

    Spritz 5 февраля 2012 г. 1:14, спустя 15 часов 13 минут 31 секунду

    artoodetoo, нет, следующий вопрос получился такой: к какому событию привязать изменение списка шаблонов в хранимом массиве? Вот добавил я новый метод. Могу теперь получить новый список и сохранить, например, в файл js. 1) Просто нажимать для этого каждый раз на кнопку "Обновить js"? 2) Каждый раз при открытии страницы получать новый список для dropbox?
  • Givi

    Сообщения: ? Репутация: N Группа: Адекваты

    Spritz 6 февраля 2012 г. 5:32, спустя 1 день 4 часа 18 минут

    stopkran, ну так у тебя ж эта страница в админке, а следовательно вызывается относительно редко, чего ж не дергать списко каждый раз, нахер тут какой-то кеш?!
  • artoodetoo

    Сообщения: 5138 Репутация: N Группа: в ухо

    Spritz 6 февраля 2012 г. 7:45, спустя 2 часа 12 минут 53 секунды

    если задача не вмещается в мозг, вероятно надо упростить условия. кеш нахрен, т.к. "Шаблонов обычно всего 2-3 "

    {+++24+++} тем более админка, да
    ιιlllιlllι унц-унц
  • stopkran

    Сообщения: 53 Репутация: N Группа: Кто попало

    Spritz 16 февраля 2012 г. 5:34, спустя 9 дней 21 час 48 минут


    если задача не вмещается в мозг, вероятно надо упростить условия


    не-ет, это слишком сложно :-) Надо просто забыть про задачу (и она решится сама)

Пожалуйста, авторизуйтесь, чтобы написать комментарий!