note 98172 added to function.bcscale

[email protected]
Newsgroups php.notes
Message-ID <[email protected]>
None of the bc functions round the resulting number to the scale specified, but instead truncate the resulting number to the correct scale. The calculation includes all digits regardless of the scale, however, so the following equals 3 instead of 2:
<?php
bcadd('1.4000000000000000001', '1.5999999999999999999', 0);
?>

Knowing this allows the round function that mwgamera posted to be shortened to one line.

<?php
function bcround($number, $scale = 0) {
	return bcadd($number, '0.' . str_repeat('0', $scale) . '5', $scale);
}
?>

..or for those of you who don't want a function, all you need to do is bcadd(yournumber, '0.5', 0) to round to a whole digit, bcadd(yournumber, '0.05', 1) to round to the tens place, bcadd(yournumber, '0.005', 1) to round to the hundreds place, and so forth...
----
Server IP: 64.71.164.2
Probable Submitter: 76.25.100.26
----
Manual Page -- http://www.php.net/manual/en/function.bcscale.php
Edit        -- https://master.php.net/note/edit/98172
Del: integrated  -- https://master.php.net/note/delete/98172/integrated
Del: useless     -- https://master.php.net/note/delete/98172/useless
Del: bad code    -- https://master.php.net/note/delete/98172/bad+code
Del: spam        -- https://master.php.net/note/delete/98172/spam
Del: non-english -- https://master.php.net/note/delete/98172/non-english
Del: in docs     -- https://master.php.net/note/delete/98172/in+docs
Del: other reasons-- https://master.php.net/note/delete/98172
Reject      -- https://master.php.net/note/reject/98172
Search      -- https://master.php.net/manage/user-notes.php
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.