Как я могу вывести только уникальные значения из свойства "REGION" с помощью кода ниже и добавить свойство "CITY" к каждому значению? ```php $region = []; $arSelect = Array("ID", "IBLOCK_ID", "NAME", "PREVIEW_TEXT", "PREVIEW_PICTURE", "PROPERTY_*"); $arFilter = Array("IBLOCK_ID"=>1); $res = CIBlockElement::GetList(Array(), $arFilter, $arSelect); while ($ob = $res->GetNextElement()) { $arFields = $ob->GetFields(); $arProps = $ob->GetProperties(); $region[$arProps['REGION']['VALUE']] = $arProps['CITY']['VALUE']; } $arResult['OFFICE_REGION'] = $region; foreach ($arResult['OFFICE_REGION'] as $region => $city):?> <option value="<?=$region?>" data-city="<?=$city?>"> <?=$region?> </option> <?endforeach;?> ``` В этом обновленном коде я использовал ассоциативный массив `$region`, в котором ключом является значение из свойства "REGION", а значением - значение из свойства "CITY". В этом случае все значения "REGION" будут уникальными, и вы сможете добавить свойство "CITY" к каждому значению при выводе их в HTML.
Для получения только уникальных значений из массива можно использовать функцию `array_unique()`. В вашем случае, перед циклом while можно добавить следующую строку кода: ```php $unique_regions = array_unique($region); ``` Затем вместо использования `$arResult['OFFICE_REGION']` в цикле foreach, вы будете использовать `$unique_regions`: ```php foreach ($unique_regions as $region => $city):?> <option value="<?=$region?>" data-city="<?=$city?>"> <?=$region?> </option> <?endforeach;?> ``` Таким образом, вы будете выводить только уникальные значения из свойства "REGION" с добавленным свойством "CITY" для каждого значения.
Вы хотите чего-то странного. У вас есть регионы, к региону привязано несколько городов (если бы город был один, то не было бы дублей). Что вы в таком случае хотите видеть в data-city для каждого региона?
Я понимаю, когда делают наоборот: выводят города и для каждого ещё сохраняют его регион, чтобы потом как-то эти данные обрабатывать. А вот какой сценарий у вас мне совершенно непонятно.
Предположим, туда нужно передать все города региона. Тогда код будет таким: