经过几次计算,我得到:
$int = 14.285714285714;
怎么只取前四位?期望输出:14.28
用字符串函数这样做绝对是错误的,而且这些几乎相同的答案看起来非常垃圾。如果你想四舍五入,那就四舍五入吧!
$int = round(14.285714285714, 2);
截断(而不是舍入),floor
是PHP中正确的函数:
$int = floor(14.285714285714 * 100) / 100;
都不需要任何类型转换或强制类型转换。
还要注意,带有小数点的数字绝对不是整数。
use substr function
$int = 14.285714285714;
echo substr($int, 0, 5);
$newint = (float)substr($int, 0, 5);
如果你想四舍五入,可以使用
round($int, 2);
输出将是:14.29
如何四舍五入
尝试数字格式,
string number_format ( float $number [, int $decimals = 0 ] )
$int = 14.285714285714;
$small = (float)number_format ( $int ,2,'.', '' ); //gets rid of the "," for thousand separator
http://us2.php.net/manual/en/function.number-format.php floor(100 * 14.285714285714) / 100