PHP.nl

uopz_set_return

uopz_set_return

Provide a return value for an existing function

bool **uopz_set_return** string $function mixed $value bool $execute
bool **uopz_set_return** string $class string $function mixed $value bool $execute

Sets the return value of the to . If is a Closure and is set, the Closure will be executed in place of the original function. It is possible to call the original function from the Closure. function``value``value``execute

Opmerking: > This function replaces . uopz_rename

classThe name of the class containing the function

functionThe name of an existing function

valueThe 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.

executeIf true, and a Closure was provided as the value, the Closure will be executed in place of the original function.

True if succeeded, false otherwise.

Voorbeeld: example

<?php
uopz_set_return("strlen", 42);
echo strlen("Banana");
?>
42

Voorbeeld: example

<?php
uopz_set_return("strlen", function($str) { return strlen($str) * 2; }, true );
echo strlen("Banana");
?>
12

Voorbeeld: 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");
?>
12