Deberías aplicar el formato dentro del while para cada elemento de $row que quieras tratar, y antes de hacer la asignación a $resultats[]. Y si son varios valores consecutivos que tienes bien identificados, puedes hacer el formato de una pasada, usando un bucle ('for').
Por ejemplo, con este código:
Código PHP:
<?php echo "<pre>";
$coso = array( array(1,2,3,4,5,6), array(3,4,5,6,7,8) );
foreach ( $coso as $id => $row ) {
for($i=3; $i<6; $i++) $row[$i] = number_format($row[$i], 2);
$otrocoso[] = $row;
}
print_r( $otrocoso );
echo "</pre>"; ?>
Obtengo $otrocoso, que es una copia del array $coso pero dando formato con decimales a algunos de los elementos (en este caso los tres últimos) de cada "sub-array" que contiene:
Código:
Array
(
[0] => Array
(
[0] => 1
[1] => 2
[2] => 3
[3] => 4.00
[4] => 5.00
[5] => 6.00
)
[1] => Array
(
[0] => 3
[1] => 4
[2] => 5
[3] => 6.00
[4] => 7.00
[5] => 8.00
)
)
Aplicar esa idea al código que tienes es apenas una línea.
Un saludo.