Welcome to WebmasterWorld Guest from 54.196.188.52

Forum Moderators: coopster & jatar k

Message Too Old, No Replies

Round numbers?

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

Junior Member

10+ Year Member

joined:Sept 26, 2005
posts:90
votes: 0


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)

Senior Member

WebmasterWorld Senior Member 10+ Year Member

joined:Oct 4, 2001
posts: 1259
votes: 11


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);

 

Join The Conversation

Moderators and Top Contributors

Hot Threads This Week

Featured Threads

Free SEO Tools

Hire Expert Members