(PECL runkit7 >= Unknown)
runkit7_method_add — Adiciona dinamicamente um novo método a uma determinada classe
class_name
A classe à qual este método será adicionado.
method_name
O nome do método a ser adicionado.
argument_list
Lista de argumentos delimitada por vírgulas para o método recém-criado.
code
O código a ser avaliado quando method_name
é chamado.
closure
Um closure que define o método.
flags
O tipo de método a ser criado pode ser
RUNKIT7_ACC_PUBLIC
,
RUNKIT7_ACC_PROTECTED
ou
RUNKIT7_ACC_PRIVATE
, opcionalmente combinado via OR binário com
RUNKIT7_ACC_STATIC
.
doc_comment
O comentário documental do método.
return_type
O tipo de retorno do método.
is_strict
Informa se o método se comporta como se tivesse sido declarado em um arquivo com strict_types=1
.
Exemplo #1 Exemplo de runkit7_method_add()
<?php
class Example {
function foo() {
echo "foo!\n";
}
}
// cria um objeto da classe Example
$e = new Example();
// Adiciona um novo método público
runkit7_method_add(
'Example',
'add',
'$num1, $num2',
'return $num1 + $num2;',
RUNKIT7_ACC_PUBLIC
);
// adiciona 12 + 4
echo $e->add(12, 4);
?>
O exemplo acima produzirá:
16