uopz_set_return
Provide a return value for an existing function
Description
bool uopz_set_return(string $function
, mixed $value
, bool $execute
= false
)
bool uopz_set_return(
string $class
,
string $function
,
mixed $value
,
bool $execute
= false
)
Note:
This function replaces uopz_rename.
Parameters
-
class
-
The name of the class containing the function
-
function
-
The name of an existing function
-
value
-
The value the function should return. If a Closure is provided and the execute flag is set, the Closure will be executed in place of the original function.
-
execute
-
If true, and a Closure was provided as the value, the Closure will be executed in place of the original function.
Return Values
True if succeeded, false otherwise.
Examples
Example #1 uopz_set_return example
<?php
uopz_set_return("strlen", 42);
echo strlen("Banana");
?>
The above example will output:
Example #2 uopz_set_return example
<?php
uopz_set_return("strlen", function($str) { return strlen($str) * 2; }, true );
echo strlen("Banana");
?>
The above example will output:
Example #3 uopz_set_return class example
<?php
class My {
public static function strlen($arg) {
return strlen($arg);
}
}
uopz_set_return(My::class, "strlen", function($str) { return strlen($str) * 2; }, true );
echo My::strlen("Banana");
?>
The above example will output: