В основном вам нужно проверить, является ли первый элемент $array['bGeneral']
массивом или значением данных, и, если это так, обработать данные по-другому. Вы можете попробовать что-то вроде этого:
if (isset($array['bGeneral']['bItem'])) {
// only one set of values
$item = $array['bGeneral'];
// process item
}
else {
// array of items
foreach ($array['bGeneral'] as $item) {
// process item
}
}
Чтобы избежать дублирования кода, вы, вероятно, захотите поместить код обработки элемента в функцию.
В качестве альтернативы вы можете создать многомерный массив, если у вас есть только одно значение, а затем продолжить обработку, как и с несколькими значениями:
if (isset($array['bGeneral']['bItem'])) {
$array['bGeneral'] = array($array['bGeneral']);
}
foreach ($array['bGeneral'] as $item) {
// process item
}