![]() |
|
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]()
|
|
| Чучмек |
|
|||
|
НЭТ БИЛЭТ ![]() ![]() Профиль Группа: Участник Сообщений: 841 Регистрация: 11.5.2008 Где: СССР Репутация: 4 Всего: 41 |
Как передать в конструктор класса массив параметров?
Наподобие call_user_func_array. Не охота через eval извращаться. -------------------- умную мысль держи при себе, а дурной - поделись с другими |
|||
|
||||
| ksnk |
|
|||
![]() прохожий ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 6855 Регистрация: 13.4.2007 Где: СПб Репутация: 96 Всего: 386 |
А это не ответ на вопрос? Добавлено через 1 минуту и 20 секунд В смысле - передавай ассоциативный массив и будет щасте, не? -------------------- Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! |
|||
|
||||
| Чучмек |
|
|||
|
НЭТ БИЛЭТ ![]() ![]() Профиль Группа: Участник Сообщений: 841 Регистрация: 11.5.2008 Где: СССР Репутация: 4 Всего: 41 |
Невкусно.
-------------------- умную мысль держи при себе, а дурной - поделись с другими |
|||
|
||||
| Arantir |
|
|||
|
Рыбак без удочки ![]() ![]() Профиль Группа: Участник Сообщений: 960 Регистрация: 18.11.2012 Репутация: 16 Всего: 55 |
И откуда у людей вечно берутся подобные проблемы? =)
Хм... Может это call_user_func_array? О, мсье знает толк в извращениях © Из анекдота http://www.php.net/manual/en/book.reflection.php ReflectionFunction::__construct ( mixed $name ) ReflectionFunction::invokeArgs ( array $args ) Но reflection - это усегда минус в перфоменсе... -------------------- interface Жопа { // ATTENTION: has to be implemented by every class of the project for proper project work } |
|||
|
||||
| Чучмек |
|
|||
|
НЭТ БИЛЭТ ![]() ![]() Профиль Группа: Участник Сообщений: 841 Регистрация: 11.5.2008 Где: СССР Репутация: 4 Всего: 41 |
Arantir, спасибо.
-------------------- умную мысль держи при себе, а дурной - поделись с другими |
|||
|
||||
| ksnk |
|
|||
![]() прохожий ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 6855 Регистрация: 13.4.2007 Где: СПб Репутация: 96 Всего: 386 |
C рефлекцией точно-точно вкуснее. Очевидно же! Класс же явно самодельный, почему бы его не откорректировать? Это сообщение отредактировал(а) ksnk - 21.8.2013, 07:21 -------------------- Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! |
|||
|
||||
| Чучмек |
|
|||
|
НЭТ БИЛЭТ ![]() ![]() Профиль Группа: Участник Сообщений: 841 Регистрация: 11.5.2008 Где: СССР Репутация: 4 Всего: 41 |
Что я на этом теряю? Может и так. -------------------- умную мысль держи при себе, а дурной - поделись с другими |
|||
|
||||
| ksnk |
|
|||
![]() прохожий ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 6855 Регистрация: 13.4.2007 Где: СПб Репутация: 96 Всего: 386 |
Эффективность. Просто выполни достаточное количество инициализаций в первом случае и во втором. Оплучится проигрыш во времени исполнения, хотя и не катастрофический, но на большом количестве повторений - заметный. Юзабилити. Для работы с таким классом ОБЯЗАТЕЛЬНО нужно будет использовать рефлекшн, а это отпугивает нормальных разработчиков -------------------- Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! |
|||
|
||||
| Sanchezzz |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1670 Регистрация: 19.11.2006 Где: Voronezh Репутация: 41 Всего: 60 |
Иногда без рефлекшина и не обойтись)
-------------------- Понравился ответ "+" по репе, не забываем закрывать тему, заказы в LS. |
|||
|
||||
| ksnk |
|
|||
![]() прохожий ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 6855 Регистрация: 13.4.2007 Где: СПб Репутация: 96 Всего: 386 |
Sanchezzz, Когда, например? Я могу себе представить только тестирование, документирование, диагностика отладочных и ошибочных сообщений. Вот я пытался прикрутить рефлекшн для конструирования админки приложения, imho, удачно. Вот только причесать немного код.
То есть чисто служебные надобности. -------------------- Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! |
|||
|
||||
| Sanchezzz |
|
||||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1670 Регистрация: 19.11.2006 Где: Voronezh Репутация: 41 Всего: 60 |
Я читал этот топик)
Например для получения пути вызванного класса отнаследованного от Modules
Модуль
Можно было например заставить пользователя прописать в модуле News в методе init вот такую штуку
Но лишние телодвижения, я не люблю делать -------------------- Понравился ответ "+" по репе, не забываем закрывать тему, заказы в LS. |
||||||
|
|||||||
| ksnk |
|
||||
![]() прохожий ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 6855 Регистрация: 13.4.2007 Где: СПб Репутация: 96 Всего: 386 |
Как то странно
А потом этот же путь, с приписанным к нему каталогом добавляем путь поиска автолода?
При чем тут рефлекшн? Все пути вычисляются статически. Не? -------------------- Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! |
||||
|
|||||
| Sanchezzz |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1670 Регистрация: 19.11.2006 Где: Voronezh Репутация: 41 Всего: 60 |
Ага чет я даже и сам не заметил, что можно по логике и без reflection решить, извиняюсь за смуту.
-------------------- Понравился ответ "+" по репе, не забываем закрывать тему, заказы в LS. |
|||
|
||||
![]()
|
| Правила форума "PHP" | |
|
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |