Несколько человек упомянули округление до 3, а затем отбрасывание последнего символа. Это на самом деле не работает. Скажем, у вас есть 2,9999 и округлите до 3, это 3 тысячи.
Это все еще не точно, лучшее решение это:
$price = '5.678';
$dec = 2;
$price = number_format(floor($price*pow(10,$dec))/pow(10,$dec),$dec);
То, что это делает, берет цену и умножает ее на 100 (10 ^ десятичных), что дает 567,8, затем мы используем пол, чтобы получить 567, и затем мы делим ее обратно на 100, чтобы получить 5,67