(PECL uopz 5)
uopz_set_return — Provide a return value for an existing function
$class
   ], string $function
   , mixed $value
   [, bool $execute = FALSE
  ] )
   Sets the return value of the function to value. If value
   is a Closure and execute is set, the Closure will be executed in place of the original function.
  
Hinweis:
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.
Beispiel #1 uopz_set_return() example
<?php
uopz_set_return("strlen", 42);
echo strlen("Banana");
?>
Das oben gezeigte Beispiel erzeugt eine ähnliche Ausgabe wie:
42
Beispiel #2 uopz_set_return() example
<?php
uopz_set_return("strlen", function($str) { return strlen($str) * 2; }, true );
echo strlen("Banana");
?>
Das oben gezeigte Beispiel erzeugt eine ähnliche Ausgabe wie:
12
Beispiel #3 uopz_set_return() class example
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");
Das oben gezeigte Beispiel erzeugt eine ähnliche Ausgabe wie:
12