Найти тему
ArtDev

Будни разработчика #1

Попал мне на доработку один компонент для MODX Revolution, на глаза попали забавные строки кода. Названия классов изменены, для скрытия информации)

$Helpers = new Helpers();
$setting = $modx->getObject('modSystemSetting', 'settings_config');
$settings = $Helpers->settingsToArray(json_decode($setting->get('value')));
$BlaBlaAPI= new BlaBlaAPI($settings);

Ну то что хранение всех настроек в одном параметре, это Бог с ним. И то что получить эти значения можно так:

$setting = $modx->getOption('settings_config');

тоже не критично. Тут интересен метод у settingsToArray у класса Helpers. А выглядит он так:

function settingsToArray($settings) {
$output = [];
foreach($settings as $key=>$value){
$output[$key] = $value;
}
return $output;
}

Я могу сетовать на первые строки на то, что веб-студия ни разу не работала с MODX Revolution, но не знания о том, что в json_decode($setting->get('value')), можно просто добавить второй параметр true и получить сразу нужны массив.

Или я что-то не понимаю?