PHP 8.1.0 RC 2 available for testing

uopz_set_return

(PECL uopz 5, PECL uopz 6, PECL uopz 7)

uopz_set_returnПредоставить возвращаемое значение для существующей функции

Описание

uopz_set_return(string $function, mixed $value, bool $execute = false): bool
uopz_set_return(
    string $class,
    string $function,
    mixed $value,
    bool $execute = false
): bool

Установить возвращаемое значение для function на value. Если value замыкание и установлен execute, замыкание будет выполняться вместо исходной функции. Можно вызвать исходную функцию из замыкания.

Замечание:

Эта функция заменяет uopz_rename().

Список параметров

class

Имя класса, содержащего функцию

function

Имя существующей функции

value

Возвращаемое значение функцией. Если передано замыкание и параметр execute установлен, замыкание будет выполнено вместо исходной функции.

execute

Если true, и в параметре value передано замыкание, замыкание будет выполнено вместо исходной функции.

Возвращаемые значения

True в случае успешного выполнения, false в противном случае.

Примеры

Пример #1 Пример использования uopz_set_return()

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

Результат выполнения данного примера:

42

Пример #2 Пример использования uopz_set_return()

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

Результат выполнения данного примера:

12

Пример #3 Пример использования uopz_set_return() с классом

<?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
add a note add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top