update page now

runkit7_function_redefine

(PECL runkit7 >= Unknown)

runkit7_function_redefineЗаменяет определение функции новой реализацией

Описание

runkit7_function_redefine(
    string $function_name,
    string $argument_list,
    string $code,
    bool $return_by_reference = null,
    string $doc_comment = null,
    string $return_type = ?,
    bool $is_strict = ?
): bool
runkit7_function_redefine(
    string $function_name,
    Closure $closure,
    string $doc_comment = null,
    string $return_type = ?,
    bool $is_strict = ?
): bool

Замечание: По умолчанию, только пользовательские функции могут быть удалены, переименованы или изменены. Для перекрытия внутренних функций, необходимо включить в php.ini опцию runkit.internal_override.

Список параметров

function_name
Имя функции для переопределения.
argument_list
Новый список аргументов, принимаемых функцией.
code
Реализация нового кода.
closure
Замыкание (closure), определяющее функцию.
return_by_reference
Определяет, должна ли функция возвращаться по ссылке.
doc_comment
Документальный комментарий функции.
return_type
Тип возвращаемого значения функции.
is_strict
Определяет, должна ли функция вести себя так, как если бы она была объявлена в файле с strict_types=1.

Возвращаемые значения

Функция возвращает true, если выполнилась успешно, или false, если возникла ошибка.

Примеры

Пример #1 Пример использования runkit7_function_redefine()

<?php
function testme() {
echo
"Оригинальная реализация Testme\n";
}
testme();
runkit7_function_redefine('testme','','echo "Новая реализация Testme\n";');
testme();
?>

Результат выполнения приведённого примера:

Оригинальная реализация Testme
Новая реализация Testme

Смотрите также

Добавить

Примечания пользователей

Пользователи ещё не добавляли примечания для страницы
To Top