Un trucco per non farli arrotondare è impostare a zero il decimale di una potenza inferiore a quello che ti interessa.
Es. 1234,56789 e vuoi ottenere 1234,56
imposti a zero il terzo decimale e poi applichi number_format.
Altra soluzione, proposta su php.net:
Codice PHP:
function fnumber_format($number, $decimals='', $sep1='', $sep2='') {
if (($number * pow(10 , $decimals + 1) % 10 ) == 5) //if next not significant digit is 5
$number -= pow(10 , -($decimals+1));
return number_format($number, $decimals, $sep1, $sep2);
}