ID:               33799
 Updated by:       [EMAIL PROTECTED]
 Reported By:      stochnagara at hotmail dot com
-Status:           Bogus
+Status:           Closed
 Bug Type:         Class/Object related
-Operating System: Windows XP
+Operating System: *
-PHP Version:      5.0.4
+PHP Version:      5.0.*
 New Comment:

This bug has been fixed in CVS.

Snapshots of the sources are packaged every three hours; this change
will be in the next snapshot. You can grab the snapshot at
http://snaps.php.net/.
 
Thank you for the report, and for helping us make PHP better.

As tony answered double check the documentation for your var_dump
problem and then look into ext/spl/tests for the array tests that make
use of ArrayObject flags. Furthermore what you want only works with
5.1.


Previous Comments:
------------------------------------------------------------------------

[2005-07-21 10:23:45] [EMAIL PROTECTED]

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



------------------------------------------------------------------------

[2005-07-21 09:34:52] stochnagara at hotmail dot com

Description:
------------
When I extend the ArrayObject class, I cannot override any of the
functions offsetXXX. Also when using var_dump i see only "Array"
element and I don't see my new public property $name.

I suppose the second thing is a bug. But the first one is maybe a
feature that one cannot override internal PHP functions.

Reproduce code:
---------------
<?
class AO2 extends ArrayObject {
        public $name;
        public function offsetGet ($index) {
                echo "Calling offsetGet for index $index\n";
                return parent::offsetGet ($index);
        }
}

$a = new AO2();
$a->name = "123";
$a[5] = 'Hi';
echo "a[5] = {$a[5]}\n";;
echo "a->name = {$a->name}\n";;
var_dump($a);
?>

Expected result:
----------------
Calling offsetGet for index 5
a[5] = Hi
a->name = 123
object(AO2)#1 (1) {
  [5]=>
  string(2) "Hi"
  ["name"]=>
  string(3) "123"
}


Actual result:
--------------
a[5] = Hi
a->name = 123
object(AO2)#1 (1) {
  [5]=>
  string(2) "Hi"
}


------------------------------------------------------------------------


-- 
Edit this bug report at http://bugs.php.net/?id=33799&edit=1

Reply via email to