diff --git a/ext/standard/basic_functions.stub.php b/ext/standard/basic_functions.stub.php index 2a427b8ab8444..ac0149c8e0b68 100755 --- a/ext/standard/basic_functions.stub.php +++ b/ext/standard/basic_functions.stub.php @@ -1315,7 +1315,7 @@ function stream_set_timeout($socket, int $seconds, int $microseconds = 0): bool /* type.c */ /** @param mixed $var */ -function gettype($var): string {} +function gettype($var, bool $resolve_object_names = false): string {} function settype(&$var, string $type): bool {} diff --git a/ext/standard/basic_functions_arginfo.h b/ext/standard/basic_functions_arginfo.h index 93e2a5bda69f5..495a943a3ef48 100755 --- a/ext/standard/basic_functions_arginfo.h +++ b/ext/standard/basic_functions_arginfo.h @@ -2008,6 +2008,7 @@ ZEND_END_ARG_INFO() ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_gettype, 0, 1, IS_STRING, 0) ZEND_ARG_INFO(0, var) + ZEND_ARG_TYPE_INFO(0, resolve_object_names, _IS_BOOL, 0) ZEND_END_ARG_INFO() ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_settype, 0, 2, _IS_BOOL, 0) diff --git a/ext/standard/tests/general_functions/gettype_classes.phpt b/ext/standard/tests/general_functions/gettype_classes.phpt new file mode 100644 index 0000000000000..91057ea33ced0 --- /dev/null +++ b/ext/standard/tests/general_functions/gettype_classes.phpt @@ -0,0 +1,28 @@ +--TEST-- +Test gettype() class reading +--FILE-- +ce->name); + } + type = zend_zval_get_type(arg); if (EXPECTED(type)) { RETURN_INTERNED_STR(type);