diff options
Diffstat (limited to 'ext/pcre/tests/bug44214_2.phpt')
| -rw-r--r-- | ext/pcre/tests/bug44214_2.phpt | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/ext/pcre/tests/bug44214_2.phpt b/ext/pcre/tests/bug44214_2.phpt new file mode 100644 index 0000000..d78846c --- /dev/null +++ b/ext/pcre/tests/bug44214_2.phpt @@ -0,0 +1,25 @@ +--TEST-- +Bug #44214-2 (crash with preg_replace_callback() and global variable) +--FILE-- +<?php +$string = 'aaa bbb ccc ddd eee ccc aaa bbb'; + +$array = array(); + +function myCallBack( $match ) { + global $array; + $array[] = $match[0]; + return 'xxx'; +} + +var_dump(preg_replace_callback( '`a+`', 'myCallBack', $string)); +var_dump($array); +?> +--EXPECT-- +string(31) "xxx bbb ccc ddd eee ccc xxx bbb" +array(2) { + [0]=> + string(3) "aaa" + [1]=> + string(3) "aaa" +} |
