(PECL runkit7 >= Unknown)
runkit7_method_redefine — Динамически изменяет код заданного метода
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_redefine()
<?php
class Example {
    function foo() {
        return "foo!\n";
    }
}
// создание объекта Example
$e = new Example();
// вывод Example::foo() (до переопределения)
echo "До: " . $e->foo();
// Переопределение метода 'foo'
runkit7_method_redefine(
    'Example',
    'foo',
    '',
    'return "bar!\n";',
    RUNKIT7_ACC_PUBLIC
);
// вывод Example::foo() (после переопределения)
echo "После: " . $e->foo();
?>Результат выполнения приведённого примера:
До: foo! После: bar!
