note 77037 added to function.number-format
| From: | eb1024 at gmail dot com | Date: | Sun, 12 Aug 2007 05:38:55 +0000 |
| Subject: | note 77037 added to function.number-format | ||
| Groups: | php.notes | ||
| Request: | Send a blank email to php-notes+get-129419@lists.php.net to get a copy of this message | ||
To address the problems number_format has when dealing with big numbers I've created my own
Number_Format method, it acts the same way as number_format and takes the same arguments but deals
with numbers as strings solving the problems above referred.
(The other methods are available at http://www.alixaxel.com/wordpress/2007/05/19/php-math-library/)
function Number_Format($number, $decimal_precision = 0, $decimals_separator = '.',
$thousands_separator = ',')
{
if ($this->Is_Negative($number))
{
$negative = true;
$number = str_replace('-', '', $number);
}
$number = explode('.', str_replace(' ', '', $number));
$number[0] = str_split(strrev($number[0]), 3);
$total_segments = count($number[0]);
for ($i = 0; $i < $total_segments; $i++)
{
$number[0][$i] = strrev($number[0][$i]);
}
$number[0] = implode($thousands_separator, array_reverse($number[0]));
if ($negative === true)
{
$number[0] = '-' . $number[0];
}
if (!empty($number[1]))
{
$number[1] = $this->Round($number[1], $decimal_precision);
}
$number = implode($decimals_separator, $number);
return $number;
}
I hope this is useful for someone!
----
Server IP: 81.92.200.26
Probable Submitter: 87.196.44.85
----
Manual Page -- http://www.php.net/manual/en/function.number-format.php
Edit -- https://master.php.net/note/edit/77037
Del: integrated -- https://master.php.net/note/delete/77037/integrated
Del: useless -- https://master.php.net/note/delete/77037/useless
Del: bad code -- https://master.php.net/note/delete/77037/bad+code
Del: spam -- https://master.php.net/note/delete/77037/spam
Del: non-english -- https://master.php.net/note/delete/77037/non-english
Del: in docs -- https://master.php.net/note/delete/77037/in+docs
Del: other reasons-- https://master.php.net/note/delete/77037
Reject -- https://master.php.net/note/reject/77037
Search -- https://master.php.net/manage/user-notes.php