Delicious Bookmark this on Delicious Share on Facebook SlashdotSlashdot It! Digg! Digg



PHP : Function Reference : runkit Functions : runkit_function_redefine

runkit_function_redefine

Replace a function definition with a new implementation (PECL runkit:0.7-0.9)
bool runkit_function_redefine ( string funcname, string arglist, string code )

Note:

By default, only userspace functions may be removed, renamed, or modified. In order to override internal functions, you must enable the runkit.internal_override setting in the system-wide php.ini file.

Parameters

funcname

Name of function to redefine

arglist

New list of arguments to be accepted by function

code

New code implementation

Return Values

Returns TRUE on success or FALSE on failure.

Examples

Example 2087. A runkit_function_redefine() example

<?php
function testme() {
 echo
"Original Testme Implementation\n";
}
testme();
runkit_function_redefine('testme','','echo "New Testme Implementation\n";');
testme();
?>

The above example will output:

Original Testme Implementation
New Testme Implementation


Code Examples / Notes » runkit_function_redefine

corentin dot delorme

Here is another example with a parameter:
<?php
function hello_world($word) {
 echo "Original Hello World: $word\n</br>";
}
$helloWorld = 'echo "Redefined Hello World: $word\n</br>";';
hello_world('test1');
runkit_function_redefine('hello_world', '$word', $helloWorld);
hello_world('test2');
?>


Change Language


Follow Navioo On Twitter
Runkit_Sandbox
Runkit_Sandbox_Parent
runkit_class_adopt
runkit_class_emancipate
runkit_constant_add
runkit_constant_redefine
runkit_constant_remove
runkit_function_add
runkit_function_copy
runkit_function_redefine
runkit_function_remove
runkit_function_rename
runkit_import
runkit_lint_file
runkit_lint
runkit_method_add
runkit_method_copy
runkit_method_redefine
runkit_method_remove
runkit_method_rename
runkit_return_value_used
runkit_sandbox_output_handler
runkit_superglobals
eXTReMe Tracker