3-1-3 «Argument par référence» - Script PHP exécutable en ligneInitiation à la programmation avec le langage PHP, §3 Sous-programmes et tableaux |
Sous-programme avec un ou plusieurs arguments par référence:function sp(&$r, &$s){ $s = ...; return $s; } Les arguments $r et $s, préfixés par le symbole &, sont des arguments par référence. À l'appel de la fonction sp, chaque argument se réfère au nom d'une variable, par exemple sp($p, $q) et le sous-programme sera exécuté avec $r qui est une référence à la variable $p, et $s qui est une référence à la variable $q. Un argument par référence peut être modifié par l'exécution du sous-programme. Le bouton permet d'exécuter le script PHP. <!DOCTYPE html> <html lang="fr"> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta name="robots" content="NoIndex,NoFollow"> <title>Argument par référence</title> </head> <body> <?php /* Données */ $v = array(121, 122, 123, 124, 125, 126); /* Déclaration du sous-programme: - la fonction moyenne(&$t) décrit comment calculer la moyenne du tableau $t; afin d'éviter que le tableau appelé soit recopié dans la variable locale $t, le tableau est passé par référence, ce qui est indiqué par le symbole &; &$t est la référence à une variable globale qui sera précisée plus tard, lors de l'appel; - $n et $s sont des variables locales. Les déclarations des fonctions n'engagent aucune action; leur seul effet est de définir de nouvelles fonctions. */ function moyenne(&$t){ $n = count($t); $s = 0; for ($i=0; $i<$n; $i++){ $s = $s + $t[$i]; } return $s/$n; } /* Appel du sous-programme afin qu'il soit exécuté: - à l'appel de moyenne($v), la référence $t pointe sur le tableau $v; la fonction moyenne($v) calcule effectivement la moyenne du tableau $v; cette valeur est mise en mémoire dans la variable globale $m. */ $m = moyenne($v); echo '<p>Moyenne = ' .$m .'</p>'; ?> </body> </html> |
Contact | Accueil > PHP > Initiation |