Menu
Coddy logo textTech

Fonctions de rappel

Fait partie de la section Logique & Flux du Journey PHP de Coddy. Leçon 4 sur 68.

Une fonction de rappel est une fonction qui est passée en tant qu’argument à une autre fonction. Au lieu d’appeler la fonction immédiatement, vous transmettez son nom afin que la fonction réceptrice puisse l’appeler plus tard lorsque cela est nécessaire.

Pour transmettre une fonction en tant que callback, il suffit d’utiliser le nom de la fonction sous forme de chaîne :

<?php
function greet($name) {
    echo "Hello, " . $name . "!";
}

function processUser($username, $callback) {
    // Effectuer un peu de traitement...
    $callback($username);  // Appeler la fonction callback
}

processUser("Alice", "greet");  // Affiche : Hello, Alice!
?>

Dans cet exemple, "greet" est transmis comme rappel à processUser(). La fonction processUser() appelle ensuite le rappel en utilisant la chaîne comme nom de fonction.

Les fonctions de rappel (callbacks) sont incroyablement utiles car elles rendent vos fonctions plus flexibles. La même fonction peut effectuer différentes actions selon la fonction de rappel que vous lui passez. Ce concept est fondamental pour de nombreuses fonctions intégrées de PHP comme array_map() et array_filter(), que vous rencontrerez plus tard dans ce cours.

challenge icon

Défi

Facile

Créez deux fonctions : l’une appelée formatUppercase qui prend une chaîne et la renvoie en majuscules, et l’autre appelée formatLowercase qui prend une chaîne et la renvoie en minuscules.

Créez ensuite une fonction appelée applyFormat qui accepte deux paramètres : une chaîne de texte et le nom d’une fonction de rappel. Cette fonction doit appliquer la fonction de rappel au texte et renvoyer le résultat.

Vous recevrez deux entrées : le type d’opération ("upper" ou "lower") et le texte à mettre en forme. Lisez les deux entrées, déterminez le rappel à utiliser en fonction du type d’opération, appelez applyFormat avec le rappel approprié et affichez le résultat mis en forme.

Format de l’entrée : deux lignes : la première ligne contient le type d’opération ("upper" ou "lower"), la deuxième ligne contient le texte à mettre en forme

Sortie attendue : le texte mis en forme en fonction du type d’opération

Essayez vous-même

<?php
// Lire l'entrée
$operation = trim(fgets(STDIN));
$text = trim(fgets(STDIN));

// TODO: Écrivez votre code ci-dessous
// Créer la fonction formatUppercase
// Créer la fonction formatLowercase
// Créer la fonction applyFormat
// Déterminer quel rappel utiliser en fonction du type d'opération
// Appeler applyFormat avec le rappel approprié

// Afficher le résultat
echo $result;
?>
quiz iconTestez-vous

Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.

Toutes les leçons de Logique & Flux

Entraînez-vous par vous-même : Compilateur PHP en ligne