Bug #66179 [Com]: var_export() exports float as integer
| From: | xuefer at gmail dot com | Date: | Mon, 29 Jun 2015 18:57:05 +0000 |
| Subject: | Bug #66179 [Com]: var_export() exports float as integer | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-193996@lists.php.net to get a copy of this message | ||
Edit report at https://bugs.php.net/bug.php?id=66179&edit=1
ID: 66179
Comment by: xuefer at gmail dot com
Reported by: david at grudl dot com
Summary: var_export() exports float as integer
Status: Re-Opened
Type: Bug
Package: Variables related
PHP Version: 5.5.6
Block user comment: N
Private report: N
New Comment:
Not sure if this is the same problem
http://3v4l.org/ZRPXO
var_export(5.3); echo "\n";
var_dump(5.3); echo "\n";
outputs:
5.29999999999999982236432
float(5.3)
in this case luckily 5.29999999999999982236432 == 5.3, and it pass ($a === eval('return '
. var_export($a, true) . ';')) definition
but i give this example to show that var_dump is better (looking) than var_export on double value
so please take it seriously
Previous Comments:
------------------------------------------------------------------------
[2014-07-03 16:48:04] vrana@php.net
($a === eval('return ' . var_export($a, true) . ';')) should result in true for
any given $a. "1" isn't a correct representation of float(1) as it results in int(1).
------------------------------------------------------------------------
[2013-11-29 22:30:09] bwoebi@php.net
Thank you for taking the time to write to us, but this is not
a bug. Please double-check the documentation available at
http://www.php.net/manual/ and the instructions on how to
report
a bug at http://bugs.php.net/how-to-report.php
A float(1.0) is stored as a float(1) (it's the same), so var_export(1.0) outputs 1.
------------------------------------------------------------------------
[2013-11-27 09:41:30] utkarsh dot parekh at yahoo dot in
If you try this var_export(2.1245) returns "2.1245". It is right.
------------------------------------------------------------------------
[2013-11-26 15:56:35] david at grudl dot com
Description:
------------
var_export(1.0) returns "1" instead of "1.0" in all PHP versions
------------------------------------------------------------------------
--
Edit this bug report at https://bugs.php.net/bug.php?id=66179&edit=1