3-1-3 «Argument par référence» - Script PHP exécutable en ligne

Initiation à 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