note 114195 added to function.floor
| From: | maikl | Date: | Thu, 23 Jan 2014 08:45:43 +0000 |
| Subject: | note 114195 added to function.floor | ||
| Groups: | php.notes | ||
| Request: | Send a blank email to php-notes+get-198318@lists.php.net to get a copy of this message | ||
A correction to the funcion floor_dec from the user "php is the best".
If the number is 0.05999 it returns 0.59 because the zero at left position is deleted.
I just added a '1' and after the floor or ceil call remove with a substr.
Hope it helps.
function floor_dec($number,$precision = 2,$separator = '.') {
$numberpart=explode($separator,$number);
$numberpart[1]=substr_replace($numberpart[1],$separator,$precision,0);
if($numberpart[0]>=0) {
$numberpart[1]=substr(floor('1'.$numberpart[1]),1);
} else {
$numberpart[1]=substr(ceil('1'.$numberpart[1]),1);
}
$ceil_number= array($numberpart[0],$numberpart[1]);
return implode($separator,$ceil_number);
}
----
Server IP: 72.52.91.14
Probable Submitter: 72.52.91.14
----
Manual Page -- http://php.net/manual/en/function.floor.php
Edit -- https://master.php.net/note/edit/114195
Del: integrated -- https://master.php.net/note/delete/114195/integrated
Del: useless -- https://master.php.net/note/delete/114195/useless
Del: bad code -- https://master.php.net/note/delete/114195/bad+code
Del: spam -- https://master.php.net/note/delete/114195/spam
Del: non-english -- https://master.php.net/note/delete/114195/non-english
Del: in docs -- https://master.php.net/note/delete/114195/in+docs
Del: other reasons-- https://master.php.net/note/delete/114195
Reject -- https://master.php.net/note/reject/114195
Search -- https://master.php.net/manage/user-notes.php