Ce serait plutôt l'occasion de trouver un mot car factorisation n'a pas grand chose à voir; en effet:
2 abbés et 4 enfants de choeur
se factorise en:
2(abbés + 2 enfants de choeur)
Pour le sujet qui nous occupe:
Dans l'état actuel, je pensais faire deux fonctions, l'une pour obtenir le nom du mois suivant, l'autre celui du mois précédent. C'est pourquoi je déclare à l'extérieur de la fonction un tableau des noms de mois, tableau dont les clés sont des nombres et les valeurs les noms des mois. Or en php, toutes les variables qui sont déclarées à l'extérieur d'une fonction sont inconnues de celle-ci.
essaie ceci:
<?PHP
$a= 1;
function double_fausse()
{
print "<p>a dans la fonction $a</p>";
return $a*2;
}
$b = double_fausse();
print "<p>a vaut $a et b vaut $b</p>";
?>
Comme on écrit en général une fonction pour qu'elle puisse servir pour des valeurs différentes, on lui passe des paramètres:
<?PHP
$a= 1;
function double_parametree($valeur)
{
print "<p>valeur dans la fonction $valeur</p>";
return $valeur*2;
}
$b = double_parametree($a);
print "<p>a vaut $a et b vaut $b</p>";
?>
maintenant une fonction qui ne fonctionne pas:
<?PHP
$t_mois = array(
1=>"janvier",
2=> "février",
3 =>"mars",
);
function afficher ($numero_de_mois)
{
return $t_mois[$numero_de_mois];
}
$nom_mois = afficher (2);
?>
Première solution qui ne s'applique qu'à $t_mois
:
<?PHP
$t_mois = array(
1=>"janvier",
2=> "février",
3 =>"mars",
);
function afficher ($numero_de_mois)
{
global $t_mois;
return $t_mois[$numero_de_mois];
}
$nom_mois = afficher (2);
print "$nom_mois";
?>
Deuxième solution qui marche avec tout tableau:
<?PHP
$t_mois = array(
1=>"janvier",
2=> "février",
3 =>"mars",
);
function afficher ($numero_de_mois, $tableau)
{
return $tableau[$numero_de_mois];
}
$nom_mois = afficher (2, $t_mois);
print "$nom_mois";
?>
Ce serait plutôt l'occasion de trouver un mot car factorisation n'a pas grand chose à voir; en effet:
2 abbés et 4 enfants de choeur
se factorise en:
2(abbés + 2 enfants de choeur)
Pour le sujet qui nous occupe:
Dans l'état actuel, je pensais faire deux fonctions, l'une pour obtenir le nom du mois suivant, l'autre celui du mois précédent. C'est pourquoi je déclare à l'extérieur de la fonction un tableau des noms de mois, tableau dont les clés sont des nombres et les valeurs les noms des mois. Or en php, toutes les variables qui sont déclarées à l'extérieur d'une fonction sont inconnues de celle-ci.
essaie ceci:
[php]<?PHP
$a= 1;
function double_fausse()
{
print "<p>a dans la fonction $a</p>";
return $a*2;
}
$b = double_fausse();
print "<p>a vaut $a et b vaut $b</p>";
?>[/php]
Comme on écrit en général une fonction pour qu'elle puisse servir pour des valeurs différentes, on lui passe des paramètres:
[php]<?PHP
$a= 1;
function double_parametree($valeur)
{
print "<p>valeur dans la fonction $valeur</p>";
return $valeur*2;
}
$b = double_parametree($a);
print "<p>a vaut $a et b vaut $b</p>";
?>[/php]
maintenant une fonction qui ne fonctionne pas:
<?PHP
$t_mois = array(
1=>"janvier",
2=> "février",
3 =>"mars",
);
function afficher ($numero_de_mois)
{
return $t_mois[$numero_de_mois];
}
$nom_mois = afficher (2);
?>
Première solution qui ne s'applique qu'à $t_mois
:
[php]<?PHP
$t_mois = array(
1=>"janvier",
2=> "février",
3 =>"mars",
);
function afficher ($numero_de_mois)
{
global $t_mois;
return $t_mois[$numero_de_mois];
}
$nom_mois = afficher (2);
print "$nom_mois";
?>[/php]
Deuxième solution qui marche avec tout tableau:
[php]<?PHP
$t_mois = array(
1=>"janvier",
2=> "février",
3 =>"mars",
);
function afficher ($numero_de_mois, $tableau)
{
return $tableau[$numero_de_mois];
}
$nom_mois = afficher (2, $t_mois);
print "$nom_mois";
?>[/php]