Cours

PHP Leçon 6

Les fonctions

Écrire une fois un bout de code et le réutiliser partout, avec des paramètres et une valeur de retour.

20 min

À la fin de cette leçon, tu sauras

  • Utiliser des fonctions toutes faites de PHP
  • Écrire ta propre fonction avec des paramètres
  • Renvoyer un résultat avec return

Tu en utilises déjà

count(), htmlspecialchars() : ce sont des fonctions. On leur donne des valeurs entre parenthèses (les arguments), elles font un travail et renvoient un résultat. PHP en propose des centaines :

<?php
echo strlen("Bonjour");          // 7 (nombre de caractères)
echo strtoupper("bts sio");      // BTS SIO
echo round(3.14159, 2);          // 3.14
echo date("d/m/Y");              // la date du jour, par exemple 17/10/2026

Astuce : la documentation officielle, php.net, explique chaque fonction avec des exemples. Tape « php » suivi du nom de la fonction dans un moteur de recherche.

Écrire sa propre fonction

Quand tu recopies le même code à plusieurs endroits, range-le dans une fonction. Tu la déclares une fois avec le mot function, puis tu l'appelles autant de fois que tu veux.

<?php
function saluer(string $prenom): string
{
    return "Bonjour $prenom !";
}

echo saluer("Léa");      // Bonjour Léa !
echo saluer("Tom");      // Bonjour Tom !
  • $prenom est un paramètre : une variable qui reçoit la valeur donnée à l'appel ;
  • return renvoie le résultat et termine la fonction ;
  • string devant le paramètre et après les deux-points indique le type attendu et le type renvoyé. C'est facultatif, mais PHP t'avertit alors si tu te trompes de type.

Plusieurs paramètres et valeur par défaut

<?php
function prixTTC(float $prixHT, float $taux = 20): float
{
    return $prixHT * (1 + $taux / 100);
}

echo prixTTC(100);        // 120 (taux de 20 % par défaut)
echo prixTTC(100, 5.5);   // 105.5

Attention : les variables créées dans une fonction n'existent que dans cette fonction. Et la fonction ne voit pas les variables du reste du programme : tout ce dont elle a besoin doit lui être donné en paramètre.

À toi de jouer

Écris une fonction carre :

  • elle prend un paramètre (un nombre) ;
  • elle renvoie (avec return) ce nombre multiplié par lui-même ;
  • ensuite, affiche le résultat de carre(7) avec echo.
index.php
  • Une fonction carre est déclarée avec un paramètre
  • Elle renvoie le paramètre multiplié par lui-même
  • Le résultat de carre(7) est affiché
Bloqué ? Voir une solution
<?php
function carre(int $nombre): int
{
    return $nombre * $nombre;
}

echo carre(7);

Quiz

1Que fait return dans une fonction ?
2Avec function f($x = 2) { return $x * 10; }, que vaut f() ?
3Que renvoie strlen("PHP") ?