ID: 12505
Updated by: jmcastagnetto
Reported By: [EMAIL PROTECTED]
Status: Open
Bug Type: Arrays related
Old Operating System: Red Hat Linux 7.1
Operating System: Red Hat Linux 6.1
Old PHP Version: 4.0.4pl1
PHP Version: latest CVS (08/01/01)
New Comment:
The problem is with the typecasting to LONG, if you use the code:
<?php
$tt=array(382478633.0,367687181.0,452504275.0,471367521.0,848270658.0,1181944543.0);
echo array_sum($tt)."\n";
?>
The result is the correct one (3704252811)
Solution would be to
1) use floating point representation for bign numbers in PHP code (add caveat to the
manual perhaps?)
or
2) check that the array_sum result is nor overflowing LONG in the C code
implementation and bump the type to DOUBLE if it does.
second option would be better IMHO
Previous Comments:
------------------------------------------------------------------------
[2001-08-01 04:02:52] [EMAIL PROTECTED]
$tt=array(382478633,367687181,452504275,471367521,848270658,1181944543);
$total_tt=array_sum($tt);
echo "Total_tt=".$total_tt;
// Prints Total_tt=-590714485
Must be 3704252811.
------------------------------------------------------------------------
Edit this bug report at http://bugs.php.net/?id=12505&edit=1
--
PHP Development Mailing List <http://www.php.net/>
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]