ID:               40442
 Updated by:       [EMAIL PROTECTED]
 Reported By:      olivier at elma dot fr
 Status:           Assigned
 Bug Type:         SPL related
 Operating System: Debian Unstable (not relevant)
 PHP Version:      5.2.1
 Assigned To:      helly
 New Comment:

Marcus. any news?


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

[2007-02-27 10:10:41] olivier at elma dot fr

Just to add the "quick and dirty" patch I use to correct the issue:

--- php-5.2.1/ext/spl/was.spl_array.c   2007-02-09 12:10:18.000000000
+0100
+++ new.php-5.2.1/ext/spl/spl_array.c   2007-02-09 12:06:33.000000000
+0100
@@ -525,7 +525,7 @@
        if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "z",
&index) == FAILURE) {
                return;
        }
-       RETURN_BOOL(spl_array_has_dimension_ex(0, getThis(), index, 1
TSRMLS_CC));
+       RETURN_BOOL(spl_array_has_dimension_ex(0, getThis(), index, 0
TSRMLS_CC));
 } /* }}} */

 /* {{{ proto mixed ArrayObject::offsetGet(mixed $index)

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

[2007-02-12 09:10:23] olivier at elma dot fr

Description:
------------
With 5.2.0 ArrayObject::offsetExists will return "true" if the
offsetExists whether its value is empty or not.
This feature is not working anymore with 5.2.1 as it checks for the
emptyness of the value too.

Reproduce code:
---------------
<?php
$a = new ArrayObject();
$a->offsetSet('property', 0);
if (!$a->offsetExists('property')) {
    echo "does not exist\n";
} else {
    echo "ok\n";
}
?>

Expected result:
----------------
ok


Actual result:
--------------
does not exist


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


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

Reply via email to