Home           
Les fonctions en PHP
 

<< Les structures de contrôle   Les opérateurs en PHP >>

Nous allons voir ici comment créer nos propres fonctions.

Une fonction basique

Pour créer une fonction en PHP, il faut utiliser le mot clé function.
<?php
function simple()
{
echo "coucou";
}
?>

Comme vous pouvez le voir, le principe de cette fonction est très simple. Elle affiche juste "coucou".

Maintenant que cette fonction est écrite, il faut l'appeler.
<?php
simple();
?>

Le code de la fonction simple() sera exêcuté et la cha&icric;ne de caractères "coucou" sera affichée dans la page. Cliquez ici.

Ce qui est important de savoir, c'est que tout code valide en PHP peut être mis dans une fonction PHP.

Arguments de fonction

Les fonctions peuvent avoir des paramètres. Ces arguments peuvent être passés par valeur ou par référence.
<?php
function fonction_avec_arg($valeur,&$reference)
{
echo $valeur." est passée par valeur.\n";
echo $reference." est passée par référence.\n";
}
?>

Une variable passé par valeur ne peut être changée. En fait, elle sera changée à l'intérieur de la fonction mais sa valeur à l'extérieur de la fonction restera inchagée.
Par contre, une variable passée par référence peut être modifiée à l'intérieur de la fonction pour que la variable soit modifiée à l'extérieur de la fonction. Une variable passée par valeur peut être une variable ou une constante (un nombre, une chaîne...). Tandis qu'une variable passée par référence doit obligatoirement être une variable. Il suffit de regarder l'exemple suivant pour comprendre. Pour qu'une valeur soit passée par référence, il faut mettre '&' devant son nom.

Il est aussi possible de mettre des valeurs par défaut aux arguments au cas où des paramètres ne seraient pas spécifiés lors de l'appel de la fonction. Il faut noter que les arguments avec des valeurs par défaut doivent être mis à la fin de la liste des arguments.
Lorsqu'un argument sera manquant, il sera remplacé par la valeur par défaut du dernier argument de la fonction. Si un second paramètre est manquant, il sera alors remplacé par la valeur par défaut de l'avant dernier argument, et ainsi de suite... Il faut donc bien faire attention à l'ordre dans lequel on passe les paramètres.
<?php
function fonction_avec_def($arg1,&$arg2,$arg3="chaine",$arg4=2,$arg5= array(1,2,3) ) {
echo "arg1 = $arg1 \n<br> arg2 = $arg2 \n<br> arg3 = $arg3 \n<br> arg4 = $arg4 \n<br> arg5 = $arg5 \n<br>";
}

$a =2;
fonction_avec_def(1,$a);
fonction_avec_def(1,$a,"une autre chaine",3,array("a","b","c"));
?>

Pour voir ce que donne le résultat de cette fonction, cliquez ici. On remarque bien l'influence des paramètres par défaut de la fonction.

Valeur de retour

Une fonction peut aussi retourner une valeur. Il suffit d'utiliser le mot clé return.
<?php
function avec_retour()
{
return 0; }

$a =avec_retour();
echo "a = $a\n"; ?>

Ici $a prend la valeur de 0. Mais il est possible de retourner tout type d'objets tels que des chaînes de caractères, des tableaux...

 

<< Les structures de contrôle   Les opérateurs en PHP >>
  eXTReMe Tracker