per ora ho risolto così, ma ci deve pur essere una funzione ad hoc

<?
function sort_array($a,$b){
$rows=count($a);
$alfa=1;
while($alfa==1){
$alfa=0;
for($x = 1; $x <$rows; $x++){
if($a[$x-1][$b]>$a[$x][$b]){
$alfa=1;
$pippo=$a[$x-1];
$a[$x-1]=$a[$x];
$a[$x]=$pippo;
}
}
}
return $a;
}

$a[0]["bianchi"]="trebbiano";
$a[1]["bianchi"]="grignolino";
$a[0]["rossi"]="lambrusco";
$a[1]["rossi"]="barbera";
print_r($a);
echo("
");

$a=sort_array($a,"rossi");
print_r($a);
?>

Array ( [0] => Array ( [bianchi] => trebbiano [rossi] => lambrusco ) [1] => Array ( [bianchi] => grignolino [rossi] => barbera ) )
Array ( [0] => Array ( [bianchi] => grignolino [rossi] => barbera ) [1] => Array ( [bianchi] => trebbiano [rossi] => lambrusco ) )