Bonjour à tous![]()
voilà, je voudrais savoir, pour une fonction créer par mes soins, si il est possible et comment déclarer et utiliser des paramètres optionnels.
merci d'avance
Bonjour à tous![]()
voilà, je voudrais savoir, pour une fonction créer par mes soins, si il est possible et comment déclarer et utiliser des paramètres optionnels.
merci d'avance
tu veux dire comment l appelez dans ton programme ?
oui et aussi comment les déclarer quand je crée ma fonctions
pour l'instant je fais ça :
je suppose qu'il doit y avoir qlq chose de plus catholique pour gérer ça
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 function ma_fontion_perso($param1,$param2,$parametre_optionnel1,$parametre_optionnel2){ if($parametre_optionnel1==""){ $parametre_optionnel1=$valeur_par_defaut; } if($parametre_optionnel2!=""){ // traitement non systèmatique avec utilisation de $parametre_optionnel2 } // traitement systèmatique de ma fonction }
@djedje37et28 :
merci pour la réactivité![]()
C'est possible, à la condition que tu attribues à tes paramètres optionnels une valeur par défaut à la création de la fonction, directement dans la déclaration :
Par exemple, function trucmuche($valeur=1);
Si tu apelles ta fonction sans préciser le paramètre, 1 sera pris par défaut.
Voilà![]()
Petite précision (car je sens que tu vas surement poser la question lol), dans ta fonction tu as plusieurs paramètres optionnels. A partir de là, comment faire pour préciser le second sans préciser le premier?
C'est simple : impossible![]()
Donc, trie bien tes paramètres optionnels en fonction de ceux que tu vas préciser souvent (à mettre devant), car dès que tu en précise un, tu seras obligé de préciser tous ceux placés avant.![]()
parfait, merci messieux![]()
comme les fonctions interne de php, bien que contraignant, ça parait logiqueEnvoyé par Athorus
merci bcp Athorus, tu rox![]()
Je t'en prie![]()
Je me suis pas trompé entre "avant" et "après", exemple :
function trucmuche($valeur1=1, $valeur2=2, $valeur3=3)
Admettons que je veuille modifier uniquement la valeur2 et la passer à 4 dans mon appel, je vais devoir écrire : trucmuche(1,4);
Inutile de repréciser la valeur3, donc il faut bien préciser toutes les valeurs AVANT le paramètre à modifier.
![]()
Voilà, et n'oublie pas le petit clic sur résolu.![]()
autant pour moi je croyais que tu parlais de la déclaration et non de l'appel de la fonction
grosse fatigue aujourd'hui
![]()
bon ben comme ça c'est bien claire pour les futures lecteurs![]()
PS : ne t'inquiet pas pour le bouton résolu, je le clickais pas histoire de finir de parlementer ensembleça sera fais d'ici peu
![]()
Partager