On appelle fonction un sous-programme qui permet d'effectuer un ensemble d'instruction.
Déclaration d'une fonction:
function Nom_De_La_Fonction(type1 argument1, type2 argument2, ...)
{
bloc d'instructions...
}
Appel d'une fonction:
Nom_De_La_Fonction(argument1, argument2, ...);
Renvoi d'une valeur par une fonction:
return valeur_ou_variable
Le langage PHP dispose de nombreuses fonctions permettant de travailler sur les variables, des tableaux, des chaînes de caractères... Fonctions intégrées:
Exemple de quelques fonctions:
- "unset($variable ,[variableN]);" détruit une ou plusieurs variables séparées par une virgule.
- "isset($variable);" indique si la variable est affectée.
- "sizeof($variable);" retourne le nombre d'éléments d'un tableau.
- "sort($variable);" trie un tableau dans un ordre croissant.
- "strtoupper(chaîne);" transforme tous les caractères d'une chaîne en majuscules.
- "strlen(chaîne);" retourne la longueur de la chaîne.
- "srand(int seed;)" srand initialise le générateur de nombres aléatoires avec seed (avec s pour la seconde).
- "rand(int min,int max);" nombre aléatoire entre min et max (inclus), après avoir initialiser le générateur de nombres aléatoires .
- ...
Maintenant nous avons tous les éléments pour commencer le script.
/* pour initialiser le générateur de nombres aléatoires a la seconde
srand(date("s"));*/
// on choisira de l'initialiser à la micro-seconde
srand((double)microtime()*1000000);
// nombre aléatoire entre 1 et 6
$x=rand(1,6); // générateur de nombre aléatoire pour le 1er dé
$y=rand(1,6); // générateur de nombre aléatoire pour le 2ème dé
$z=rand(1,6); // générateur de nombre aléatoire pour le 2ème dé// afichage du résultat
print "dé 1 = ".$x."<br>";
print "dé 2 = ".$y."<br>";
print "dé 3 = ".$z."<br>";
// on test si on a fait un 421
if( (($x==4)||($y==4)||($z==4))
&& (($x==2)||($y==2)||($z==2))
&& (($x==1)||($y==1)||($z==1)))
{
// si on à un 421
print "<br> Bravo vous avez fait un 421!!!<br>";
}
else
print"<br>Perdu!!!<br>";
Voila le résultat du script :
dé 1 = 4
dé 2 = 4
dé 3 = 1
Perdu!!!