php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #40959 Returning unset array key by reference sets it to null
Submitted: 2007-03-30 14:41 UTC Modified: 2007-03-30 14:50 UTC
From: mamay55 at gmail dot com Assigned:
Status: Not a bug Package: Arrays related
PHP Version: 5.2.1 OS: Linux/Windows
Private report: No CVE-ID: None
Welcome back! If you're the original bug submitter, here's where you can edit the bug or add additional notes.
If you forgot your password, you can retrieve your password here.
Password:
Status:
Package:
Bug Type:
Summary:
From: mamay55 at gmail dot com
New email:
PHP Version: OS:

 

 [2007-03-30 14:41 UTC] mamay55 at gmail dot com
Description:
------------
Whenever a function (global or class method) returns a reference to an array element which is not set, the value of that element is set to null.

Reproduce code:
---------------
 $data = array();


 function &get_data($key) {
     global $data;
     return $data[$key];
 }

 print_r($data);
 $result = &get_data('TEST');
 echo $result;
 print_r($data);


Expected result:
----------------
The expected result would be that the value of the unset element would not be set and the following warning would be produced:
Undefined index:  TEST in ...

Actual result:
--------------
Array
(
)
Array
(
    [TEST] =>
)


Patches

Pull Requests

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2007-03-30 14:50 UTC] mike@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

.
 
PHP Copyright © 2001-2025 The PHP Group
All rights reserved.
Last updated: Thu Jul 03 14:01:34 2025 UTC