Здравствуйте, помогите разобраться, пожалуйста!
Ситуация:
1. Есть массив $services = array('estate_service-fridge','estate_service-internet','estate_service-tv','estate_service-washing_machine','estate_sevice-phone');
2. Есть массив из массивов $estate_parameters array(estate_address_house: array([0]=>11),estate_address_max_level: array([0]=>9) итд..
Задача:
Перебирая
второй массив, если ключ есть в первом массиве и значение по ключу
второго массива равно true
swith case_ом добавить к строке $estate_services соответствующее значение
Код, который не хочет:
$estate_services=''; // Заводим строку
$services = array('estate_service-fridge','estate_service-internet','estate_service-tv','estate_service-washing_machine','estate_sevice-phone'); // Массив сравнения ключей второго массива
foreach ($estate_parameters as $key ) { // Для каждого элемента в массиве $estate_parameters
foreach ($estate_parameters[$key] as $value => $val) { // <- подозреваю что ошибка тут, но..
if(in_array($key, $services) && $val!="false"){ //если ключ совпал, и значение не false то
switch ($key) { //подбираем значение и плюсуем переменную $service
case 'estate_service-fridge': $service = 'Холодильник'; $estate_services .= $service.' '; break;
case 'estate_service-internet': $service = 'Интернет'; $estate_services .= $service.' '; break;
case 'estate_service-tv': $service='Телевизор'; $estate_services .= $service.' '; break;
case 'estate_service-washing_machine': $service='Стиральная машина'; $estate_services .= $service.' '; break;
case 'estate_sevice-phone': $service='Телефон'; $estate_services .= $service.' '; break;
}
}
}
}