Les fonctions utilisateurs en PHP

Nous allons voir dans ce tutoriel les fonctions utilisateurs - PHP.
Nous avons donc vu dans le chapitre précédent les fonctions courantes, internes à PHP mais vous pouvez également créer vos propres fonctions.

 

Les fonctions utilisateurs

On commence par définir la fonction.
Une fonction s'écrira :
function NomFonction()
Attention, vous ne pouvez pas utiliser un nom de fonction déjà utilisé par PHP.
→ Liste des fonctions

Entre les parenthèses se trouvent les arguments (s'il y en a). Les arguments sont de nouvelles informations qui vont vous permettre de modifier la fonction initiale ou alors de la compléter.
Entre les accolades se trouvent les instructions.
return termine immédiatement la fonction et retourne l'argument qui lui est passé.

<?php
function NomFonction(){
instructions ...
return
}
?>

- Pour inclure votre fonction dans une page  vous l'appelez simplement par son nom.

 

Testez tous les exemples qui vont suivre dans votre éditeur de code afin de bien assimiler !

Exemple de fonction utilisateur en PHP : vous avez un site de peinture et vous avez besoin de connaître la surface de la pièce du client.
Vous allez donc créé une fonction permettant ce calcul.


<?php
    function SurfacePiece($largeur,$longueur){
        $total=$largeur*$longueur;
        return $total;
    }
    $surface=SurfacePiece(6,4);
    echo "La pièce fait ".$surface." m2.";
?>

Vous avez donc ici créé une fonction se nommant SurfacePiece ayant deux paramètres largeur et longueur.
Entre les accolades, vous avez écrit vos instructions pour calculer la surface de la pièce.
Return termine l'exécution de la fonction et retourne le résultat.

Pour que le résultat de votre fonction s'affiche sur votre navigateur, vous créez une variable à laquelle sera assignée votre fonction et les valeurs de ses deux paramètres qui auront été saisies par le client.
Vous faîtes ensuite un écho pour afficher le résultat.

 

- Pour gagner du temps vos fonctions seront placées dans un fichier à part (vous le nommez comme vous le souhaitez du moment qu'il se termine par .php et qu'il ne contienne que vos fonctions).
Vous réutiliserez souvent les mêmes fonctions : en les regroupant , cela vous évitera de réécrire à chaque fois votre code sur vos pages et vous pourrez également les modifier par la suite dans ce fichier.

Exemple : nous allons créer une fonction MoyenneEleve afin de faire la moyenne des notes d'un élève au premier trimestre.

fichier fonctions.php :

<?php
function MoyenneEleve($geo, $hist, $math, $bio){
    $MA=round(($geo+$hist+$math+$bio)/4);
  echo "Votre moyenne au premier trimestre est de : ".$MA;
}
?>

fichier index.php :

<html>
    <body>
        <?php
        include("fonctions.php");
        ?>
        <h1> Moyenne de l'élève 1er trimestre</h1>
        <?php
        MoyenneEleve(12,4,16,17);
        ?>
    </body>
</html>

A la sortie, vous obtenez :

Moyenne de l'élève 1er trimestre

Votre moyenne au premier trimestre est de : 12

 

Exemple :
Nous demandons au visiteur de rentrer un nombre et nous lui indiquons s'il est pair ou impair.
Nous allons donc créer une fonction dans une page fonctions.php que nous nommerons "parite". Un nombre pair est un nombre entier divisible par deux (et dont le résultat est zéro).

fichier fonctions.php
les fonctions utilisateurs - PHP

fichier index.php
fonction parité php

 

Les valeurs par défaut

Vous pouvez assigner des valeurs par défaut dans vos fonctions. Imaginez avec l'exemple vu précédemment pour calculer la surface d'une pièce que votre client ne rentre qu'une valeur.
Dans l'exemple ci-dessous, il a saisi 6 comme largeur.
Nous avons assigné au préalable des valeurs par défaut soit 5 pour la largeur et 20 pour la longueur.
Etant donné que la valeur saisie pour la largeur est 6 (elle efface la valeur par défaut 5) mais que la longueur n'est pas définie, c'est la valeur par défaut qui sera prise en compte.

<?php
    function SurfacePiece($largeur=5,$longueur=20){
        $total=$largeur*$longueur;
        return $total;
  }
$surface=SurfacePiece(6);
    echo "La pièce fait ".$surface." m2.";

?>

 

Retour en haut