>>38
array_fill() 使うとレコード増えたときに負担になるのでは?

$a=array();
$keys=array();
$result=mysql_query("select * from table where field in ('$b[0]','$b[1]','$b[2]')");
while($buf=mysql_fetch_array($result)){
 $key = array_search($buf[field],$b);
 $a[$key]="〜〜〜";
 array_push($keys, $key);
}
sort($keys);
foreach($keys AS $key) {
 print $a[$key];
}

キーを別の配列に突っ込んで、その配列をソート。
ソートされたキーの順番(= $bの要素順)に出力ってのはどう?