(PECL runkit7 >= Unknown)
runkit7_function_redefine — Replace a function definition with a new implementation
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
Note: By default, only userspace functions may be removed, renamed, or modified. In order to override internal functions, you must enable the
runkit.internal_overridesetting in php.ini.
function_nameName of function to redefine
argument_listNew list of arguments to be accepted by function
codeNew code implementation
closureA closure that defines the function.
return_by_referenceWhether the function should return by reference.
doc_commentThe doc comment of the function.
return_typeThe return type of the function.
is_strict Whether the function behaves as if it was declared in a file with strict_types=1
Example #1 A runkit7_function_redefine() example
<?php
function testme() {
echo "Original Testme Implementation\n";
}
testme();
runkit7_function_redefine('testme','','echo "New Testme Implementation\n";');
testme();
?> The above example will output:
Original Testme Implementation New Testme Implementation
© 1997–2025 The PHP Documentation Group
Licensed under the Creative Commons Attribution License v3.0 or later.
https://www.php.net/manual/en/function.runkit7-function-redefine.php