PHP - create_function ()

La fonction create_function () est une fonction intégrée qui peut être utilisée pour créer une fonction anonyme (de style lambda).

Syntaxe

string create_function( string $args , string $code )

La fonction create_function () peut créer une fonction anonyme à partir des paramètres passés et renvoyer un nom unique. Habituellement, les arguments sont passés sous forme de chaîne dans des apostrophes qui sont également recommandées pour le paramètre de code. La raison de l'utilisation de chaînes d'apostrophe est de protéger les noms de variables contre le traitement. En d'autres termes, si nous utilisons des guillemets, nous devons échapper à tous les noms de variables comme ceci: \ $ avar.

La fonction create_function () peut renvoyer un nom de fonction unique sous forme de chaîne, ou false en cas d'erreur.

Exemple 1

<?php
   $triangle = create_function('$b, $h', 'return "triangle = " . ($b*$h)/2;');
   echo $triangle(4,6);
?>

Production

triangle = 12

Exemple 2

<?php
   $str = "hello world!";
   $lambda = create_function('$match', 'return "friend!";');
   $str = preg_replace_callback('/world/', $lambda, $str);
   
   echo $str ;
?>

Production

hello friend!!