runkit_method_add
runkit_method_add
(PECL runkit >= 0.7.0)
runkit_method_add - 动态地将新方法添加到给定的类
描述
bool runkit_method_add ( string $classname , string $methodname , string $args , string $code [, int $flags = RUNKIT_ACC_PUBLIC [, string $doc_comment = NULL ]] )
bool runkit_method_add ( string $classname , string $methodname , Closure $closure [, int $flags = RUNKIT_ACC_PUBLIC [, string $doc_comment = NULL ]] )
参数
classname
该方法将被添加到的类
methodname
要添加的方法的名称
args
新创建的方法的逗号分隔的参数列表
code
methodname
调用时要评估的代码
closure
定义方法的闭包。
flags
该类型的方法来创建,可以是RUNKIT_ACC_PUBLIC
,RUNKIT_ACC_PROTECTED
或RUNKIT_ACC_PRIVATE
任选地通过位或具有组合RUNKIT_ACC_STATIC
(自1.0.1)
注意
:该参数仅用于PHP 5,因为在此之前,所有方法都是公开的。
doc_comment
函数的doc评论。
返回值
成功TRUE
或失败时返回FALSE
。
更新日志
版 | 描述 |
---|---|
runkit 1.0.4 | 期望封闭的另一种语法已被添加。 |
runkit 1.0.4 | 可选参数doc_comment已添加。 |
例子
Example #1 runkit
_
method
_
add() example
<?php
class Example {
function foo() {
echo "foo!\n";
}
}
// create an Example object
$e = new Example(
// Add a new public method
runkit_method_add(
'Example',
'add',
'$num1, $num2',
'return $num1 + $num2;',
RUNKIT_ACC_PUBLIC
// add 12 + 4
echo $e->add(12, 4
?>
上面的例子将输出:
16
← runkit_lint
runkit_method_copy →