Welcome to WebmasterWorld Guest from 54.163.115.193

Forum Moderators: coopster & jatar k

Round numbers?

   
1:08 am on Oct 2, 2009 (gmt 0)

5+ Year Member



Hello, I have a list of numbers that can be in format like:


8.8458e-119
1.06542e-52
2.68e-36
2.91405e-35
0.0190644
0.0205511
0.004

Is there something you can suggest me that I use to have some more "elegance" appearance, i.e:


8.84e-119
1.06e-52
2.68e-36
2.91e-35
0.019
0.02
0.004

? Note that I have all these number formats and I want to use a command that could apply to all of them.

7:51 pm on Oct 2, 2009 (gmt 0)

WebmasterWorld Senior Member 10+ Year Member



There is no single function that will accomplish what you want as you are rounding to varied precisions. You would need to use the round() function in different ways.

For the scientific notation numbers, one solution would be to temporarily strip off the notation, and then round each number to two decimal places before popping the notation back on:

Non notation numbers it looks like you're rounding to a precision of 3 decimal places?

So something like this should do essentially what you want:

if (strpos($num,'e') !== false) {
list($num,$extra) = explode('e',$num);
$num = round($num,2).'e'.$extra;
}
else $num = round($num,3);

 

Featured Threads

My Threads

Hot Threads This Week

Hot Threads This Month