19.10.2006, 10:23 | #1 |
Участник
|
Как запустить метод класса :)
Утро доброе.
Может кто сталкивался с такой проблемой: Есть класс, например - Class1 в нем статический метод, например - Class1::method1 Есть таблица, в которой перечислены методы класса - Class1 в виде текстовых констант - Class1::method1, Class1::method2, и т.д. Есть форма, на которой юзверь выбирает нужный метод из таблицы. Задача: Запустить выбранный метод. З.Ы. Switch не подходит. Т.к. постоянно придеться править код, а такой возможности нету
__________________
Бывает, что человек молчит, когда ничего не знает о данном предмете, но чаще – когда знает о нем все. (Джордж Бернард Шоу) |
|
19.10.2006, 10:31 | #2 |
Moderator
|
Посмотрите на RunBase::getDescription(), там все есть.
__________________
Андрей. |
|
19.10.2006, 10:34 | #3 |
Участник
|
|
|
19.10.2006, 10:43 | #4 |
Участник
|
Я бы использовал Strategy pattern и выбирал бы не методы а классы (а лучше даже обхекты) - так можно как-то специфицировать общий интерфейс + можно в каждый класс джобавить description и показывать его пользователю
|
|
19.10.2006, 10:59 | #5 |
Участник
|
Спасибо, ссылочка помогла.
Все на самом деле просто PHP код:
Спасибо за советы!
__________________
Бывает, что человек молчит, когда ничего не знает о данном предмете, но чаще – когда знает о нем все. (Джордж Бернард Шоу) |
|
19.10.2006, 11:57 | #6 |
Moderator
|
Т.е. методы все же не статические, раз используете callObject()?
__________________
Андрей. |
|
19.10.2006, 12:23 | #7 |
Участник
|
Это не принципиально. Работа горит и по этому проще было сделать их не статичными, чем разбираться.
Просто там был класс который выводил разные отчётики (Один метод - один отчёт), а вызывались они из джоба. Соответственно проще было запускать статические методы, чем создавать экземпляры. Теперь хотят видеть формочку в которой можно задавать параметры и выбирать отчёты. По этому статические методы уже не нужны
__________________
Бывает, что человек молчит, когда ничего не знает о данном предмете, но чаще – когда знает о нем все. (Джордж Бернард Шоу) |
|
|
Похожие темы | ||||
Тема | Ответов | |||
Запустить метод контрола | 2 | |||
Запустить метод класса | 2 | |||
Как вызвать нужный метод класса? | 5 | |||
Метод класса, возвращающий сумму налога. 2.5SP5 | 2 |
|