Используйте для этого number_format
. Он вернет строку, тем самым сохранив десятичные разряды без изменений, даже если они будут .00
.
$price = 15900;
// Defaults to a comma as a thousands separator
// but I've set it to an empty string (last argument)
$formatted = number_format( $price / 100, 2, '.', '' );
echo $formatted;
Или, что еще лучше, возможно, взгляните также на money_format
, в зависимости от того, важны ли интернационализированные обозначения и / или символы валюты.