(PECL runkit7 >= Unknown)
runkit7_method_add — Динамически добавляет новый метод в заданный класс
class_nameКласс, в котором нужно добавить метод.
method_nameИмя метода, который нужно добавить.
argument_listРазделённый запятыми список аргументов для нового метода.
code
Код, который будет выполняться
при вызове method_name.
closureЗамыкание (closure), определяющее метод.
flags
Метод может быть
RUNKIT7_ACC_PUBLIC,
RUNKIT7_ACC_PROTECTED или
RUNKIT7_ACC_PRIVATE, и, при необходимости,
объединён с помощью побитового ИЛИ с
RUNKIT7_ACC_STATIC.
doc_commentДокументальный комментарий метода.
return_typeТип возвращаемого значения метода.
is_strict
Определяет, будет ли метод вести себя так,
как если бы он был объявлен в файле с strict_types=1.
Функция возвращает true, если выполнилась успешно, или false, если возникла ошибка.
Пример #1 Пример использования runkit7_method_add()
<?php
class Example {
function foo() {
echo "foo!\n";
}
}
// создание объекта Example
$e = new Example();
// добавление нового общедоступного метода
runkit7_method_add(
'Example',
'add',
'$num1, $num2',
'return $num1 + $num2;',
RUNKIT7_ACC_PUBLIC
);
// добавление 12 + 4
echo $e->add(12, 4);
?>Результат выполнения приведённого примера:
16