# runkit7_function_redefine

(PECL runkit7 >= Unknown)

runkit7_function_redefine — Remplace une définition de fonction par une nouvelle implémentation

### Description

runkit7_function_redefine(
string `$function_name`,
string `$argument_list`,
string `$code`,
bool `$return_by_reference` = `null`,
string `$doc_comment` = `null`,
string `$return_type` = ?,
bool `$is_strict` = ?
): bool
runkit7_function_redefine(
string `$function_name`,
Closure `$closure`,
string `$doc_comment` = `null`,
string `$return_type` = ?,
bool `$is_strict` = ?
): bool

> Note: Par défaut, seulement les fonctions définies par l'utilisateur peuvent être supprimées, renommées ou modifiées. Afin de surcharger des fonctions internes, vous devez activer la configuration `runkit.internal_override` dans le fichier php.ini du système entier.

### Liste de paramètres

`function_name`

  Le nom de la fonction à redéfinir

`argument_list`

  La nouvelle liste d'arguments à accepter par la fonction

`code`

  Le code de la nouvelle implémentation

`closure`

  Une closure qui définit la fonction

`return_by_reference`

  Si la fonction doit retourner par référence

`doc_comment`

  Le commentaire de documentation de la fonction

`return_type`

  Le type de retour de la fonction

`is_strict`

  Si la fonction se comporte comme si elle était déclarée dans un fichier avec `strict_types=1`

### Valeurs de retour

Cette fonction retourne `true` en cas de succès ou `false` si une erreur survient.

### Exemples

Exemple #1 Un exemple de runkit7_function_redefine()

`<?php
function testme() {
echo "Original Testme Implementation\n";
}
testme();
runkit7_function_redefine('testme','','echo "New Testme Implementation\n";');
testme();
?>`

L'exemple ci-dessus va afficher :

    Original Testme Implementation
    New Testme Implementation

### Voir aussi

- runkit7_function_add() - Ajoute une nouvelle fonction, similaire à create_function
- runkit7_function_copy() - Copie une fonction vers un nouveau nom de fonction
- runkit7_function_rename() - Change un nom de fonction
- runkit7_function_remove() - Supprime une définition de fonction
- runkit7_method_redefine() - Change dynamiquement le code de la méthode donnée