Código PHP:
   <?php
    $numero = '2005,95';
    echo($numero." - ".number_format($numero, 2, '.', ''));
?>    
Código:
  
Como podeis observar, borra los decimales. ¿Alguien se le ocurre algo? Gracias 2005,95 - 2005.00
| 
 | |||
|  puede pasar que la variable $numero, la interprete como un string? luego cuando la pasas a numero con format_numbr, elimina lo de despues de la coma y después le pone los decimales.... prueba a definir $numero='2005.95' | 
| 
 | ||||
|  Al final he optado por una solución sencilla: utilizar str_replace para cambiar las comas por puntos y viceversa.  |