var_dump($r->getParameters()[0]->getName());
var_dump($r->getParameters()[0]->getClass());
echo $r->getParameters()[0], "\n";
-echo $r->getReturnType(),"\n";
+echo $r->getReturnType()->getName(), "\n";
echo $r,"\n";
?>
--EXPECT--
foreach ($refl->getParameters() as $param) {
if ($param->hasType()) {
$type = $param->getType();
- echo $type->__toString() . "\n";
+ echo $type->getName() . "\n";
}
}
}
internal_function->prototype = NULL;
if (ptr->flags) {
if (!(ptr->flags & ZEND_ACC_PPP_MASK)) {
- if (ptr->flags != ZEND_ACC_DEPRECATED || scope) {
+ if (ptr->flags != ZEND_ACC_DEPRECATED && scope) {
zend_error(error_type, "Invalid access level for %s%s%s() - access must be exactly one of public, protected or private", scope ? ZSTR_VAL(scope->name) : "", scope ? "::" : "", ptr->fname);
}
internal_function->fn_flags = ZEND_ACC_PUBLIC | ptr->flags;
{
reflection_object *intern;
type_reference *param;
- zend_string *str;
if (zend_parse_parameters_none() == FAILURE) {
return;
}
GET_REFLECTION_OBJECT_PTR(param);
- str = reflection_type_name(param);
-
- if (param->arg_info->allow_null) {
- size_t orig_len = ZSTR_LEN(str);
- str = zend_string_extend(str, orig_len + 1, 0);
- memmove(ZSTR_VAL(str) + 1, ZSTR_VAL(str), orig_len + 1);
- ZSTR_VAL(str)[0] = '?';
- }
-
- RETURN_STR(str);
+ RETURN_STR(reflection_type_name(param));
}
/* }}} */
ZEND_ME(reflection, __clone, arginfo_reflection__void, ZEND_ACC_PRIVATE|ZEND_ACC_FINAL)
ZEND_ME(reflection_type, allowsNull, arginfo_reflection__void, 0)
ZEND_ME(reflection_type, isBuiltin, arginfo_reflection__void, 0)
- ZEND_ME(reflection_type, __toString, arginfo_reflection__void, 0)
+ ZEND_ME(reflection_type, __toString, arginfo_reflection__void, ZEND_ACC_DEPRECATED)
PHP_FE_END
};
?>
--EXPECTF--
string(11) "Traversable"
-string(12) "?Traversable"
+
+Deprecated: Function ReflectionType::__toString() is deprecated in %s on line %d
+string(11) "Traversable"
+string(6) "string"
+
+Deprecated: Function ReflectionType::__toString() is deprecated in %s on line %d
string(6) "string"
-string(7) "?string"
string(4) "Test"
-string(5) "?Test"
+
+Deprecated: Function ReflectionType::__toString() is deprecated in %s on line %d
+string(4) "Test"
+string(4) "Test"
+
+Deprecated: Function ReflectionType::__toString() is deprecated in %s on line %d
string(4) "Test"
-string(5) "?Test"
if ($ra) {
var_dump($ra->allowsNull());
var_dump($ra->isBuiltin());
- var_dump((string)$ra);
+ var_dump($ra->getName());
}
}
}
if ($ra) {
var_dump($ra->allowsNull());
var_dump($ra->isBuiltin());
- var_dump((string)$ra);
+ var_dump($ra->getName());
}
}
}
if ($ra) {
var_dump($ra->allowsNull());
var_dump($ra->isBuiltin());
- var_dump((string)$ra);
+ var_dump($ra->getName());
}
}
bool(true)
bool(true)
bool(false)
-string(9) "?stdClass"
+string(8) "stdClass"
** Function 0 - Parameter 4
bool(false)
** Function 0 - Parameter 5
$rt = $rp->getType();
$rrt = $rm->getReturnType();
unset($rm, $rp);
-var_dump((string) $rt, (string) $rrt);
+var_dump($rt->getName(), $rrt->getName());
--EXPECT--
string(4) "Test"
foreach ($functions as $function) {
$reflectionFunc = new ReflectionFunction($function);
$returnType = $reflectionFunc->getReturnType();
- var_dump($returnType->__toString());
+ var_dump($returnType->getName());
}
?>
--EXPECTF--
var_dump((string)(new ReflectionParameter("test", 0))->getType());
?>
---EXPECT--
+--EXPECTF--
+Deprecated: Function ReflectionType::__toString() is deprecated in %s on line %d
string(8) "iterable"