--- /dev/null
+--TEST--
+Bug #47027 (var_export doesn't show numeric indices on ArrayObject)
+--FILE--
+<?php
+$ao = new ArrayObject(array (2 => "foo", "bar" => "baz"));
+var_export ($ao);
+?>
+--EXPECT--
+ArrayObject::__set_state(array(
+ 2 => 'foo',
+ 'bar' => 'baz',
+))
level = va_arg(args, int);
+ php_printf("%*c", level + 1, ' ');
if (hash_key->nKeyLength != 0) {
- php_printf("%*c", level + 1, ' ');
zend_u_unmangle_property_name(hash_key->type, hash_key->arKey, hash_key->nKeyLength - 1, &class_name, &prop_name);
php_printf(" '%R' => ", hash_key->type, prop_name);
- php_var_export(zv, level + 2 TSRMLS_CC);
- PUTS (",\n");
+ } else {
+ php_printf(" %ld => ", hash_key->h);
}
+ php_var_export(zv, level + 2 TSRMLS_CC);
+ PUTS (",\n");
return 0;
}
/* }}} */