<?php  /* Divers II */

// Voir : http://fr.php.net/manual/fr/language.functions.php

/*
	Contrairement au C, les fonctions ne sont pas typées (donc peuvent retourner n'importe quoi)
	Elles peuvent aussi être définies n'importe ou (en bas ou en haut de là ou on l'utilise), mais c'est toujours plus clair de les définir avant.
	On peut définir une fonction a l'intérieur d'un block ( {} if ,fonction, while) elle ne alors sera utilisable que dans ce block 
*/

function facto($a) {
	if($a == 1) {
		return 1;
	} else if($a <= 0){
		return 0;
	}
	return $a * facto($a - 1);
}

echo "facto(2): ". facto(2) . "<br/>";
$c = 4;
echo 'facto($c): '. facto($c) . "<br/>";

if(true) {
	function lala($a, $b) {
		return $a + $b;
	}
	echo "lala(5,2): ". lala(5,2) . "<br />";
}

/* On s'en fout là, c'est juste pour afficher la source */
include("hl.php");
hl('exemple4.php');
?>