Операция выполнена!
Закрыть
Хабы: PHP

Всем привет! Расскажу о большом обновлении в пакете sbwerewolf/language-specific.

Для тех кто не знаком с этим пакетом коротко опишу его назначение.

Допустим вы по API получили JSON с большой вложенностью, и вам нужно достать из JSON какое то значение которое зарыто поглубже. Что делать ? конечно преобразовать JSON строку в ассоциативный массив, а дальше что делать ? Конечно прописать все индексы до искомого элемента, получиться что то такое:

formatted = (string)response["response"]["GeoObjectCollection"]["featureMember"]
[0]["GeoObject"]["metaDataProperty"]["GeocoderMetaData"]["Address"]["formatted"]
?? "Адрес не найден";

Получилась строка кода длиной 200 символов. Не очень удобное такое читать. Самое неприятное, что элемента с индексом 0 может и не быть, то есть сначала надо проверить, что он есть, а потом уже идти по массиву дальше, и каждый раз придётся приписывать весь это хвост из индексов, поэтому код будет заграмождён индексами, работать с таким кодом не удобно.

Пакет sbwerewolf/language-specific , позволяет избавить код от сплошного перечисления индексов, замороченных выражений, скобочек и операторов ??.

Читать далее
Читайте также
НОВОСТИ

ПИШИТЕ

Техническая поддержка проекта ВсеТут

info@vsetut.pro