Bug #74344 [Opn->Fbk]: isset() returns inncorect value
| From: | requinix@php.net | Date: | Thu, 30 Mar 2017 16:04:35 +0000 |
| Subject: | Bug #74344 [Opn->Fbk]: isset() returns inncorect value | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-208197@lists.php.net to get a copy of this message | ||
Edit report at https://bugs.php.net/bug.php?id=74344&edit=1
ID: 74344
Updated by: requinix@php.net
Reported by: damianboni at gmail dot com
Summary: isset() returns inncorect value
-Status: Open
+Status: Feedback
Type: Bug
Package: Scripting Engine problem
Operating System: ubuntu 16.04.3
PHP Version: 7.0.17
Block user comment: N
Private report: N
New Comment:
Seems to working fine. https://3v4l.org/uKiR6
You tried with that *exact* script? Are you using any zend_extensions? Any difference with opcache
enabled and disabled?
Previous Comments:
------------------------------------------------------------------------
[2017-03-30 15:55:22] damianboni at gmail dot com
Description:
------------
Tested on PHP7.0.8 ubuntu 16.04.3 @ 2017-03-30
isset() is incorrectly retuning false (should return true) when checking array key that has its
value set to boolean.
I tested the below script on different version of PHP and always get true with an exception to 7.0.8
Test script:
---------------
Code:
$params['entry']['attributes'] = array(
'enabled' => true
);
var_dump(isset($params['entry']['attributes']['enabled']));
$whatIsGoingOn = $params['entry']['attributes']['enabled'];
var_dump(isset($whatIsGoingOn));
var_dump(array_key_exists('enabled', $params['entry']['attributes']));
Output:
bool(false)
bool(true)
bool(true)
Expected result:
----------------
bool(true)
bool(true)
bool(true)
Actual result:
--------------
bool(false)
bool(true)
bool(true)
------------------------------------------------------------------------
--
Edit this bug report at https://bugs.php.net/bug.php?id=74344&edit=1