PHP 8.4.0 RC4 available for testing

uopz_set_return

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

uopz_set_returnApporte une valeur de retour pour une fonction existante

Description

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

Définit la valeur de retour de la function à value. Si value est une fermeture et que execute est défini, la fermeture sera exécutée à la place de la fonction d'origine. Il est possible d'appeler la fonction d'origine depuis la fermeture.

Note:

Cette fonction remplace uopz_rename().

Liste de paramètres

class

Le nom de la classe contenant la fonction

function

Le nom d'une fonction existante

value

La valeur que la fonction doit renvoyer. Si une fermeture est fournie et que le drapeau d'exécution est défini, la fermeture sera exécutée à la place de la fonction d'origine.

execute

Si true, et qu'une fermeture a été fournie en tant que valeur, la fermeture sera exécutée à la place de la fonction d'origine.

Valeurs de retour

True en cas de succès, sinon false.

Exemples

Exemple #1 Exemple de uopz_set_return()

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

L'exemple ci-dessus va afficher :

42

Exemple #2 Exemple de uopz_set_return()

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

L'exemple ci-dessus va afficher :

12

Exemple #3 Exemple de uopz_set_return() avec une classe

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

L'exemple ci-dessus va afficher :

12
add a note

User Contributed Notes

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