Выберите выпадающий цикл foreach PHP с опциями «optgroup»

У меня есть выпадающее меню с PHP 'foreach', которое я перебираю, чтобы заполнить опции выбора. Это хорошо работает. Однако то, что я хотел бы сделать, это иметь различные суб-метки, используя опцию «optgroup». В моем возвращенном массиве у меня есть «тип» «синий», «зеленый» и «красный». Как я могу разделить опции выбора на группы на основе $ album ['type']?

Вот код, который у меня есть:

$query = mysql_query("SELECT * FROM background_albums);
$albums = array();
while($row = mysql_fetch_assoc($query)) {
    array_push($albums, $row);
}

<select name="backgroundList" id="backgroundList">
  <? foreach($albums as $album) { ?>
    <option value="<?=($row['id']);?>"><?=$row['title'];?></option>
  <? } ?>
</select>

Это то, чего я хотел бы достичь в цикле foreach:

if ($album['type'] == 'green')...

<optgroup label="Green Backgrounds">
      <option>1</option>
      <option>2</option>
      <option>3</option>
      <option>4</option>
</optgroup>

if ($album['type'] == 'blue')...

<optgroup label="Blue Backgrounds">
      <option>5</option>
      <option>6</option>
      <option>7</option>
      <option>8</option>
</optgroup>

Ответы на вопрос(3)

Ваш ответ на вопрос