Ja, zet het in de lus:
$array[ $row['cat_title'] ][ $row['sub_cat_id'] ] = $row['sub_cat_title'];
Maar, $array[$row['cat_title']]
is mogelijk nog niet ingesteld, dus u moet deze controle vooraf toevoegen:
if( !isset( $array[$row['cat_title']])) {
$array[$row['cat_title']] = array();
}
Uw originele code heeft deze controle niet nodig omdat $array[]
genereert geen meldingen/waarschuwingen, maar wanneer u een specifieke sleutel probeert in te stellen, genereert die een melding/waarschuwing als de variabele nog niet als een array is gedeclareerd.