fonction

Répondre
tonio
le 14/10/2004 à 21:15
tonio
Salut,
j'ai une fonction anonyme qui doit incrementer un compteur.

La variable s'incremente dans la fonction mais met inaccessible hors de la fonction???

avance()
{
$i++;
return $i;
}

pourquoi ???
à+
iceman
onizuka
le 14/10/2004 à 21:41
onizuka
Car tu dois faire comme ceci:
$i n'est plus valable dans ton programme appelant. Il n'est valable que dans ta fonction.

$i=avance();
et la tu recupere la valeur de i en sortie.

Sache que dans l'algo on note

fonction avance():entier
se qui veut dire que la fonction avance retourne un entier et n'attend rien en paramétre.
Voila si tu veux en savoir plus il n'y a qu'a demander.
Php is easy le reste is busy...
LA GLOBULE
le 14/10/2004 à 22:51
LA GLOBULE
Tu ne donnes pas de parametres à ta fonction.
Par conséquent, elle ne connait pas $i.

Donc elle fait le $i++ sur du vent.

Voici une solution :

<?php
function avance ($i) {
$i++;
return $i;
}
// exemple :

$i = 3;
$i = avance($i);

// affichera 4
echo $i;
?>


Si tu ne veux pas appeler ta fonction avec un paramètre, regarde le mot code 'global' pour définir $i, et par la meme occasion, regarde le cours sur la portée des variables.

[Message modifié le 14/10/2004 à 22:58 par LA GLOBULE]
zebden
le 14/10/2004 à 22:56
zebden
Comme t'as oublié une accolade ! :)
zebdinou pour les intimes / Blog : http://www.zebden.fr
Répondre

Ecrire un message

Votre message vient d'être créé avec succès.
LoadingChargement en cours