ID: 42484 Updated by: [EMAIL PROTECTED] Reported By: twen at travian dot org -Status: Open +Status: Bogus Bug Type: Math related Operating System: Linux 2.6.18-5-amd64 x86_64 PHP Version: 5.2.3 New Comment:
Precision has nothing to do with this. Previous Comments: ------------------------------------------------------------------------ [2007-08-30 11:43:07] twen at travian dot org Description: ------------ on php 5.2.1 the return value of the round function can be modified in its precision via the "precision" ini parameter. but on php 5.2.3, the precision parameter doesn't have any affect on the return value of the round function. The phpinfo function displays the configured paramter, therefore it can't be an configuration problem. Reproduce code: --------------- <?php $number = 1200000; $number = $number*1; print "$number ".gettype($number)."<br>"; ini_set('precision','12'); print "precision: ".ini_get('precision'); $number = round($number); print "<br>$number ".gettype($number); ini_set('precision','6'); print "<br>precision: ".ini_get('precision'); $number = round($number); print "<br>$number ".gettype($number); $number = (int)$number; print "<br>$number ".gettype($number); ?> Expected result: ---------------- on php 5.2.1 you get: 1200000 integer precision: 12 1200000 double precision: 6 1.2E+06 double 1200000 integer Actual result: -------------- on php 5.2.3 you get: 1200000 integer precision: 12 1.2E+6 double precision: 6 1.2E+6 double 1200000 integer ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=42484&edit=1