您的位置:

php取小数点两位,数字取小数点后两位

本文目录一览:

请教,php保留两位小数,但不四舍五入

使用bc一类的函数,按字符串方式运算即可。

/**

 * 数值非四舍五入保留两位小数

 * @author Zjmainstay

 * @website 

 * @param $num 数值

 * @return 保留两位小数

 */

function getNum($num, $scale = 2) {

        $numStr = (string)$num . str_repeat('0', $scale);

        

        //匹配精度前的数值

        if(preg_match('#^\d+\.\d{0,'.$scale.'}#', $numStr, $match)) {

            return $match[0];

        } else {

            return '0';

        }

    }

    

    echo getNum(10.0253) . "\n";

    echo getNum(0.5) . "\n";

PHP怎么定义保留2位小数的变量

在php中要保留两位小数的方法有很多种办法,有如:printf,substr,number_format,round等等方法

方法一

sprintf()函数 ,sprintf() 函数把格式化的字符串写写入一个变量中

?php

$number = 123;

$txt = sprintf("%f",$number);

echo $txt;

?

输出:

123.000000

方法二 substr()函数

$num = 123213.666666;  

echo sprintf("%.2f",substr(sprintf("%.3f", $num), 0, -2));

方法三 number_format()函数

$number = 1234.5678;

$nombre_format_francais = number_format($number, 2, ',', ' '); // 1234,57

$english_format_number = number_format($number, 2, '.', '');   // 1234.57(我一般用这个)

方法四 round 函数,round() 函数对浮点数进行四舍五入。

?php

echo(round(0.60));

echo(round(0.50));

echo(round(0.49));

echo(round(-4.40));

echo(round(-4.60));

?

输出:

1

1

-4

-5

如果要保留小数,后来参数根保留小数位数即可。

$number = 1234.5678;

echo round($number ,2); //1234.57

用php使数字保留小数点后两位怎么做的?

PHP 中的 round() 函数可以实现

round() 函数对浮点数进行四舍五入。

round(x,prec)

参数说明

x 可选。规定要舍入的数字。

prec 可选。规定小数点后的位数。

返回将 x 根据指定精度 prec (十进制小数点后数字的数目)进行四舍五入的结果。prec 也可以是负数或零(默认值)。

注释:PHP 默认不能正确处理类似 "12,300.2" 的字符串。

例如:

?php

echo round(-4.635,2);

?

输出: -4.64

PHP如何保留2位小数

要分2种情况。

1、数值不变,只在输出时保留2位小数。

echo sprintf('%.2f', 3.1415);

2、数值上保留2位

echo round(3.1415, 2);