« Programmation PHP/Fonctions » : différence entre les versions

Contenu supprimé Contenu ajouté
Aucun résumé des modifications
Ligne 162 :
 
Le code se comprend de lui-même. Il affichera : ''Je suis programmeur, c’est utile, c’est intéressant.''
 
== Fonctions de rappel ==
Pour passer une fonction en argument d'une autre, il faut utiliser <code>call_user_func()</code>. Ex :
<syntaxhighlight lang="php">
function methodeAppelante(string $nomDeMethodeAppelee)
{
\call_user_func($nomDeMethodeAppelee);
}
</syntaxhighlight>
 
== Fonctions anonymes ==
Une fonction sans nom peut être stockée dans une variable permettant de l'appeler. Le mot clé <code>use</code> permet d'injecter des variables globales dedans. Ex :
<syntaxhighlight lang="php">
$variableGlobale = 'Hello';
$fonctionAnonyme = function ($argument) use ($variableGlobale) {
return $variableGlobale.' '.$argument.PHP_EOL;
};
echo $fonctionAnonyme('World'); // Hello World
echo $fonctionAnonyme('You'); // Hello You
</syntaxhighlight>
 
== Fonctions fléchées ==
Depuis PHP7.4, on peut définir une fonction anonyme avec l'opérateur "=>" et le mot réservé <code>fn</code>. Ex :
<syntaxhighlight lang="php">
$fonctionFlechee = fn($argument) => $variableGlobale.' '.$argument.PHP_EOL;
echo $fonctionFlechee('World'); // Hello World
echo $fonctionFlechee('You'); // Hello You
</syntaxhighlight>
 
== Fonctions prédéfinies ==