Edit report at https://bugs.php.net/bug.php?id=62607edit=1
ID: 62607
Comment by: xmak at studioartlan dot com
Reported by:tito at miarroba dot net
Summary:array_walk_recursive move internal pointer
Status: Analyzed
Type: Bug
Package:Arrays related
PHP Version:5.3.14
Block user comment: N
Private report: N
New Comment:
This also happens for regular array_walk()
Previous Comments:
[2012-07-19 14:18:09] larue...@php.net
it's a side affect of fixing #61730
before that fix, array_walk_ use a pos to hold iterator position, but that will
cause segfault if the postion become a pending pointer(by unseting the array
element).
[2012-07-19 10:27:12] reeze dot xia at gmail dot com
Yes, it did after the fix for https://bugs.php.net/bug.php?id=61730.
[2012-07-19 08:52:53] tito at miarroba dot net
Description:
array_walk_recursive move internal pointer position since 5.3.13 version
Test script:
---
$arr = array('a'='b');
echo 'Before - '.current($arr).PHP_EOL;
array_walk_recursive($arr, function($val){});
echo 'After - '.current($arr);
Expected result:
Before - b
After - b
Actual result:
--
Before - b
After - false
--
Edit this bug report at https://bugs.php.net/bug.php?id=62607edit=1