0 added
0 removed
Original
2026-01-01
Modified
2026-02-26
1
<p>Диспетчеризация по ключу ассоциативного массива мощнее чем кажется на первый взгляд. Далеко не всегда достаточно выбирать разные данные, иногда приходится выполнять другой код.</p>
1
<p>Диспетчеризация по ключу ассоциативного массива мощнее чем кажется на первый взгляд. Далеко не всегда достаточно выбирать разные данные, иногда приходится выполнять другой код.</p>
2
<p>Предположим что нам надо сформировать массив с фамилиями наших пользователей. Главное условие - для девушек берётся девичья фамилия.</p>
2
<p>Предположим что нам надо сформировать массив с фамилиями наших пользователей. Главное условие - для девушек берётся девичья фамилия.</p>
3
<p>Реализуем эту задачу, используя старый добрый if:</p>
3
<p>Реализуем эту задачу, используя старый добрый if:</p>
4
<p>Теперь решим эту задачу с помощью диспетчеризации по ключам объекта, но в отличие от предыдущего урока, в значениях у нас будут функции:</p>
4
<p>Теперь решим эту задачу с помощью диспетчеризации по ключам объекта, но в отличие от предыдущего урока, в значениях у нас будут функции:</p>
5
<p><em>Кода стало немного больше, но хочу подчеркнуть, что во многом "виноват" сам PHP. У него очень многословный синтаксис определения анонимных функций. Тот же код в JavaScript, будет практически идентичен по размерам первоначальному варианту.</em></p>
5
<p><em>Кода стало немного больше, но хочу подчеркнуть, что во многом "виноват" сам PHP. У него очень многословный синтаксис определения анонимных функций. Тот же код в JavaScript, будет практически идентичен по размерам первоначальному варианту.</em></p>
6
<p>В некоторых ситуациях такой вариант решения задачи лучше. В нём явно прослеживаются зависимости, особенно если их становится много. Кроме того, конфигурация данными позволяет вынести их в другое место и расширять поведение без переписывания кода, который использует эти данные.</p>
6
<p>В некоторых ситуациях такой вариант решения задачи лучше. В нём явно прослеживаются зависимости, особенно если их становится много. Кроме того, конфигурация данными позволяет вынести их в другое место и расширять поведение без переписывания кода, который использует эти данные.</p>
7
<p>Ещё один пример - парсинг данных в зависимости от их типа:</p>
7
<p>Ещё один пример - парсинг данных в зависимости от их типа:</p>
8
8