169 похожих чатов

А где такие штуки уместно применять и почему нельзя заранее

определить функцию и использовать ее при выполнении условия?

11 ответов

8 просмотров

Там, где вам надо знать, есть функция или нет. Если нет - определить свою. Полифилы, вам уже писали об этом.

Встречал в вордпрессе такое. При подключении модулей можно внутри приложения переопределять функции, которые объявлены там таким способом. Это нужно для кастомизации логики. Помог бы переход на DIC, но в сообществе очень не любят использование классов и объектов (кроме static, конечно). Еще там в очень большом приоритете обратная совместимость.

Trekov
Встречал в вордпрессе такое. При подключении модул...

В вп это делается из-за кучи плагинов без ООП (и вообще, из-за общей процедурности цмс). Вероятность того, что ф-ция с таким же именем есть в одном из N плагинов немаленькая, поэтому и проверяют. Но прикол в том, что обычно дальше проверки и останова или переназначения дело не идет (я не видел ни разу). А по нормальному нужно проверить и в случае существования подобрать несуществующее имя и создать функцию с этим именем...

Роман Бочкодел
В вп это делается из-за кучи плагинов без ООП (и в...

Потрібно тоді мати якийсь реєстр власних функцій плагіну і звертатись до них через реєстр. Щось типу public function getFunction(string $alias): callable

Volodymyr Melko
Потрібно тоді мати якийсь реєстр власних функцій п...

По хорошему, надо (а в идеале, нужно нормальный паттерн использовать - MVC, хотябы). Но это ж ВП. )))

PowerAxis- Автор вопроса
PowerAxis
А почему бы тогда анонимку не использовать?

потому что она не глобальная, очевидно же?

Альберт Степанцев
потому что она не глобальная, очевидно же?

анонімку покласти у свій реєстр, під аліасом =)

PowerAxis
А почему бы тогда анонимку не использовать?

Я бы синглтон сделал. Хоть я и считаю их костылями, но это лучше чем function_exist...

Похожие вопросы

Обсуждают сегодня

Я тут за тем, чтобы задать вопрос, так как не знаю ассемблер, учу с/с++. Короче, насколько дорога операция перехода в функцию при ее вызове? Дело в том, что в с++ есть макросы...
Максим Рябцев
12
Anyone here suffers from unexplained aural migraines, who would be up for talking for a bit? Doesn't *have* to be aural, but I am not asking about headaches, I mean actual mi...
Martin Rys
55
А какие чаты вообще в ходу? Auto aim? И что еше
do you think you're better off alone? А
13
hello friends. Do you know how can I learn getx? I have a software project that I should deliver it up to 5 weeks later and I need to learn firebase too. I will be thankfull
AmirHossein Razavi
15
Привет, нужен совет старших товарищей. Есть глобальная переменная var DefaultDataFolder:string; инициализируем DefaultDataFolder:='a:\_OUT\'; есть примитивная процедур...
Max Otto
14
Доброе время суток! у меня тут иноды закончились. и понял почему по сути кстит, я периодически очищаю постгрес и сентри контайнер: postgres=# DELETE FROM nodestore_node WHER...
Юсиф Насиров
9
Какой дос блять?
007
9
Вопрос. Теоретический. Есть список команд. Команды отправляю в обработку некой функции, по очереди. Разные команды могут давать разные результаты после обработки. В зависимос...
Serjone
7
lazarus-3.2.0/gtk, linux патч "имя проекта по умолчанию project1 -> prj" день добрый не нравится "именя проекта по умолчанию" (project1), к.раз приходится переименовывать (н...
livontiy
5
Коллеги, а в чём сейчас хорошо писать на перле, в смысле ide? Пробовал в идее с плагином, подсветка есть, даже какие-то предупреждения есть, но рефакторинга считай нет. Перене...
Дмитрий Петров
9
Карта сайта