首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

ReflectionFunction::__construct

(PHP 5, PHP 7)

ReflectionFunction::__construct — Constructs a ReflectionFunction object

Description

代码语言:javascript
复制
public ReflectionFunction::__construct ( mixed $name )

Constructs a ReflectionFunction object.

Parameters

name

The name of the function to reflect or a closure.

Return Values

No value is returned.

Errors/Exceptions

A ReflectionException if the name parameter does not contain a valid function.

Changelog

Version

Description

5.3.0

name can now be a closure.

Examples

Example #1 ReflectionFunction::__construct() example

代码语言:javascript
复制
<?php
/**
?*?A?simple?counter
?*
?*?@return????int
?*/
function?counter1()
{
????static?$c?=?0;
????return?++$c;
}

/**
?*?Another?simple?counter
?*
?*?@return????int
?*/
$counter2?=?function()
{
????static?$d?=?0;
????return?++$d;

};

function?dumpReflectionFunction($func)
{
????//?Print?out?basic?information
????printf(
????????"\n\n===>?The?%s?function?'%s'\n".
????????"?????declared?in?%s\n".
????????"?????lines?%d?to?%d\n",
????????$func->isInternal()???'internal'?:?'user-defined',
????????$func->getName(),
????????$func->getFileName(),
????????$func->getStartLine(),
????????$func->getEndline()
????);

????//?Print?documentation?comment
????printf("--->?Documentation:\n?%s\n",?var_export($func->getDocComment(),?1));

????//?Print?static?variables?if?existant
????if?($statics?=?$func->getStaticVariables())
????{
????????printf("--->?Static?variables:?%s\n",?var_export($statics,?1));
????}
}

//?Create?an?instance?of?the?ReflectionFunction?class
dumpReflectionFunction(new?ReflectionFunction('counter1'));
dumpReflectionFunction(new?ReflectionFunction($counter2));
?>

The above example will output something similar to:

代码语言:javascript
复制
===> The user-defined function 'counter1'
     declared in Z:\reflectcounter.php
     lines 7 to 11
---> Documentation:
 '/**
 * A simple counter
 *
 * @return    int
 */'
---> Static variables: array (
  'c' => 0,
)


===> The user-defined function '{closure}'
     declared in Z:\reflectcounter.php
     lines 18 to 23
---> Documentation:
 '/**
 * Another simple counter
 *
 * @return    int
 */'
---> Static variables: array (
  'd' => 0,
)

See Also

  • ReflectionMethod::__construct() - Constructs a ReflectionMethod
  • Constructors

← ReflectionFunction

ReflectionFunction::export →

代码语言:txt
复制
 ? 1997–2017 The PHP Documentation Group

Licensed under the Creative Commons Attribution License v3.0 or later.

扫码关注腾讯云开发者

领取腾讯云代金券

http://www.vxiaotou.com