Heim > Backend-Entwicklung > PHP-Tutorial > PHP小数点最后一位加1、减1

PHP小数点最后一位加1、减1

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Freigeben: 2016-06-06 20:09:38
Original
1606 Leute haben es durchsucht

比如我有几个数字(小数点后面的位数不固定):

1、155.055
2、122.196
3、0.9631

我怎么做才能让这些数字的小数点最后一位+1,或者-1?比如+1的话希望得到:

1、155.056
2、122.197
3、0.9632

回复内容:

比如我有几个数字(小数点后面的位数不固定):

1、155.055
2、122.196
3、0.9631

我怎么做才能让这些数字的小数点最后一位+1,或者-1?比如+1的话希望得到:

1、155.056
2、122.197
3、0.9632

<code>$num =12.2346;
$tmp = explode('.',$num);
$dec = end($tmp);
$count = strlen($dec);
$p= pow(0.1,$count);
$result = $num+$p;
echo($result);
</code>
Nach dem Login kopieren

自己改成函数吧, 有些地方还要加些判断,

都存成整数吧,然后存储一个小数点的位置。
因为 float 型 还是不能准确的表示 0.1 0.01 0.001 。。。等数据的,多次添加删除之后会有累计误差,甚至加了跟没加一样。
比如

<code>0.1+0.2 == 0.30000000000000004</code>
Nach dem Login kopieren

$n = 10.123;
$fix = floatval(pow(10, strlen(explode('.', strval($n))[1])));
$n = ($n*$fix + 1)/$fix;

Verwandte Etiketten:
php
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Aktuelle Ausgaben
PHP-Datenerfassung?
Aus 1970-01-01 08:00:00
0
0
0
PHP-Erweiterung intl
Aus 1970-01-01 08:00:00
0
0
0
Wie man PHP gut lernt
Aus 1970-01-01 08:00:00
0
0
0
Mehrere PHP-Versionen
Aus 1970-01-01 08:00:00
0
0
0
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage