summaryrefslogtreecommitdiff
path: root/ext/standard/tests/general_functions/debug_zval_dump_refs.phpt
diff options
context:
space:
mode:
Diffstat (limited to 'ext/standard/tests/general_functions/debug_zval_dump_refs.phpt')
-rw-r--r--ext/standard/tests/general_functions/debug_zval_dump_refs.phpt46
1 files changed, 46 insertions, 0 deletions
diff --git a/ext/standard/tests/general_functions/debug_zval_dump_refs.phpt b/ext/standard/tests/general_functions/debug_zval_dump_refs.phpt
new file mode 100644
index 0000000000..0af30d3379
--- /dev/null
+++ b/ext/standard/tests/general_functions/debug_zval_dump_refs.phpt
@@ -0,0 +1,46 @@
+--TEST--
+References in debug_zval_dump()
+--FILE--
+<?php
+
+$r = 1;
+$a = [&$r];
+debug_zval_dump($a);
+$a[] =& $r;
+debug_zval_dump($a);
+unset($a[1]);
+debug_zval_dump($a);
+unset($r);
+// rc=1 singleton ref remains
+debug_zval_dump($a);
+
+?>
+--EXPECT--
+array(1) refcount(2){
+ [0]=>
+ reference refcount(2) {
+ int(1)
+ }
+}
+array(2) refcount(2){
+ [0]=>
+ reference refcount(3) {
+ int(1)
+ }
+ [1]=>
+ reference refcount(3) {
+ int(1)
+ }
+}
+array(1) refcount(2){
+ [0]=>
+ reference refcount(2) {
+ int(1)
+ }
+}
+array(1) refcount(2){
+ [0]=>
+ reference refcount(1) {
+ int(1)
+ }
+}