Я создаю скрипт для автоматической генерации RSS-канала для различных разделов моего сайта.Я запросил базу данных, и у меня есть массив данных, который представляет каждый раздел с именем $showData
.Я использую оператор switch
для установки различных переменных в зависимости от раздела сайта.Вместо того, чтобы изменять этот сценарий каждый раз, когда я добавляю шоу, я бы хотел, чтобы case
в моем операторе switch
был динамическим.
<?php
switch($section){
case 'show1':
$title = $showData['show1'] . ' Title';
$description = $showData['show1'] . ' Description';
break;
case 'show2':
$title = $showData['show2'] . ' Title';
$description = $showData['show2'] . ' Description';
break;
}
?>
Я попытался использовать цикл foreach
чтобы создать каждый случай, но вы не можете поместить это в оператор switch
.Кто-то еще в другом посте, который я прочитал, предложил использовать eval()
.
Вот мой код, который я пробовал, который не работает.
<?php
switch($showFilter)}
foreach($showFilters as $key => $value){
case $key:
$title = $value;
$description = $value;
break;
}
}
?>
Вот print_r
массива
Array
(
[show1] => The Name of Show One
[show2] => The Name of Show Two
)