Sì, impostalo nel ciclo:
$array[ $row['cat_title'] ][ $row['sub_cat_id'] ] = $row['sub_cat_title'];
Ma, $array[$row['cat_title']]
potrebbe non essere ancora impostato, quindi dovresti aggiungere questo controllo in anticipo:
if( !isset( $array[$row['cat_title']])) {
$array[$row['cat_title']] = array();
}
Il tuo codice originale non ha bisogno di questo controllo poiché $array[]
non genererà alcun avviso/avviso, ma quando si tenta di impostare una chiave specifica, verrà generato un avviso/avviso se la variabile non è già dichiarata come array.