Вопрос

Я даже не уверен в том, как назвать это qn. Но, надеюсь, есть простой способ сделать это на динамическом языке, как Groovy.

Скажем, у меня есть классное обслуживание, где я делегирую деловую логику. Методы в немfunA(), funB()... funX().

Теперь у меня есть класс контроллера, где я называю закрытие услуг, которая может быть вызвана как Service.funa (). Сейчас на основе переменной (которая может иметь значения A, B ... X), Мне нужно для правильного закрытия обслуживания. В основном, чтобы избежать писать много, если условные заявления. Что-то типа service."fun+var"() сделал бы. Я не уверен, можно ли заменить переменную в замечании (функции) имени. или любой способ, передавая функцию (имя) в качестве параметра ... не уверен

Я думаю, что PHP имеет аналогичную особенность http://php.net/manual/en/functions.variable-functions.php.

Спасибо за любой указатель ..

Это было полезно?

Решение

Да, это возможно. Это должно делать то, что вы хотите:

service."fun${var}"()

Правильное название Вызов динамического метода.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top