[RFC DISCUSSION] var_info

php.internals

Fleshgrinder

10 years ago
I would like to start the discussion on the already announced var_info() function. Especially the following open issues should be addressed before going into voting: 1. Whether to output "negative zero float" for -0.0 or keep "zero float". This functionality was requested on Reddit but IEEE 754 actually says that one should ignore the difference. Detecting the negative zero would also require the signbit functionality from C99 (or weird hacking). 2. Whether to output "invalid object" instead of "object of class __PHP_Incomplete_Class" to make it more clear cut that this object is wonky. https://wiki.php.net/rfc/var_info
-- Richard "Fleshgrinder" Fussenegger

Dan Ackroyd

10 years ago
On 26 June 2016 at 18:19, Fleshgrinder <php@fleshgrinder.com> wrote:
> I would like to start the discussion on the already announced var_info() > function. > > https://wiki.php.net/rfc/var_info
The RFC doesn't seem to state any reason why this should be in core, rather than in a userland library. cheers Dan

Jesse Schalken

10 years ago
On Mon, Jun 27, 2016 at 3:19 AM, Fleshgrinder <php@fleshgrinder.com> wrote:
> I would like to start the discussion on the already announced var_info() > function. Especially the following open issues should be addressed > before going into voting: > > 1. Whether to output "negative zero float" for -0.0 or keep "zero > float". This functionality was requested on Reddit but IEEE 754 actually > says that one should ignore the difference. Detecting the negative zero > would also require the signbit functionality from C99 (or weird hacking). >
I think IEEE 754 only specifies that -0.0 and +0.0 be considered equal for the purpose of numeric equality. That doesn't necessarily mean converting to a string in some manner should produce the same result. It is already the case that (string)(float)-0.0 === "-0" and this is how I check for -0.0 in PHP.

Fleshgrinder

10 years ago
On 6/28/2016 12:44 AM, Dan Ackroyd wrote:
> The RFC doesn't seem to state any reason why this should be in core, > rather than in a userland library. >
I will extend the RFC on the weekend with the missing information, thanks for the heads up. On 6/28/2016 4:21 AM, Jesse Schalken wrote:
> I think IEEE 754 only specifies that -0.0 and +0.0 be considered equal for > the purpose of numeric equality. That doesn't necessarily mean converting > to a string in some manner should produce the same result. It is already > the case that (string)(float)-0.0 === "-0" and this is how I check for -0.0 > in PHP. >
Exactly, the question is whether this function should report it or not.
-- Richard "Fleshgrinder" Fussenegger