diff --git a/NEWS b/NEWS index d53d61d2f0699..5d384d41c62cf 100644 --- a/NEWS +++ b/NEWS @@ -17,6 +17,10 @@ PHP NEWS . Fixed bug GH-8847 (PHP hanging infinitly at 100% cpu when check php syntaxe of a valid file). (Dmitry) +- Reflection: + . Fixed bug GH-8943 (Fixed Reflection::getModifiersNames() with readonly + modifier). (Pierrick) + - Standard: . Fixed the crypt_sha256/512 api build with clang > 12. (David Carier) diff --git a/ext/reflection/php_reflection.c b/ext/reflection/php_reflection.c index bf408136cc5f9..7ce4878139d19 100644 --- a/ext/reflection/php_reflection.c +++ b/ext/reflection/php_reflection.c @@ -1550,6 +1550,10 @@ ZEND_METHOD(Reflection, getModifierNames) if (modifiers & ZEND_ACC_STATIC) { add_next_index_stringl(return_value, "static", sizeof("static")-1); } + + if (modifiers & ZEND_ACC_READONLY) { + add_next_index_stringl(return_value, "readonly", sizeof("readonly")-1); + } } /* }}} */ diff --git a/ext/reflection/tests/Reflection_getModifierNames_001.phpt b/ext/reflection/tests/Reflection_getModifierNames_001.phpt new file mode 100644 index 0000000000000..6506bce63b552 --- /dev/null +++ b/ext/reflection/tests/Reflection_getModifierNames_001.phpt @@ -0,0 +1,23 @@ +--TEST-- +Reflection::getModifierNames() basic +--FILE-- + +--EXPECT-- +private +protected,static +public,readonly +abstract +abstract,final +public,static,readonly