diff options
Diffstat (limited to 'ext/reflection/tests/bug40794.phpt')
| -rw-r--r-- | ext/reflection/tests/bug40794.phpt | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/ext/reflection/tests/bug40794.phpt b/ext/reflection/tests/bug40794.phpt new file mode 100644 index 000000000..ca4f3e92b --- /dev/null +++ b/ext/reflection/tests/bug40794.phpt @@ -0,0 +1,38 @@ +--TEST-- +Bug #40794 (ReflectionObject::getValues() may crash when used with dynamic properties) +--SKIPIF-- +<?php +if (!extension_loaded("reflection")) { + die("skip"); +} +?> +--FILE-- +<?php + +$obj = new stdClass(); +$obj->prop1 = '1'; +$obj->prop2 = '2'; +$obj->prop3 = '3'; + +$reflect = new ReflectionObject($obj); + +$array = array(); +foreach($reflect->getProperties() as $prop) +{ + $array[$prop->getName()] = $prop->getValue($obj); +} + +var_dump($array); + +echo "Done\n"; +?> +--EXPECTF-- +array(3) { + ["prop1"]=> + string(1) "1" + ["prop2"]=> + string(1) "2" + ["prop3"]=> + string(1) "3" +} +Done |
