How do I loop through this array and remove any empty values:
[28] => Array ( [Ivory] => [White] => ) [29] => Array
I see you already have a working solution, but just for fun, with array_map goodness:
$array = array_filter(array_map('array_filter', $array));