La fonction maFonction() n'a pas de paramètre. si je lui en passe ok, j'arrive à les récupérer (même si le nombre est variable) car je sais combien de paramètre je lui passe et que les variable sont en dur. ex : maFonction($var1, $var2);
mais dans le cas d'un array qui comprend x données (qui peut changer à chaque fois).
comment je peux mettre dans la fonction maFonction() chaque paramètre ?
pour qu'au final j'ai par ex :
maFonction(array[0], array[1]); ou maFonction(array[0], array[1], array[2]);
merci de votre aide
Le 24/06/2012 17:43, Fredchou a écrit :
Le 24/06/2012 16:12, Y a Personne a écrit :
Je voudrais exécuter une fonction dont le nombre de paramètre est
variable.
Ses paramètres sont dans un tableau et là ca coince
$Params = array("pomme", "poire", "abricot");
maFonction()
{
}
comment exécuter la fonction "maFonction" avec les 3 valeurs en
paramètres.
Merci de votre aide
Je ne comprends pas très bien ton problème...
Souhaites-tu faire : maFonction($Params) ?
Ou bien : maFonction("pomme", "poire", "abricot") ?
S'il s'agit de la 2° proposition, va voir dans l'aide PHP :
La fonction maFonction() n'a pas de paramètre. si je lui en passe ok,
j'arrive à les récupérer (même si le nombre est variable) car je sais
combien de paramètre je lui passe et que les variable sont en dur. ex :
maFonction($var1, $var2);
mais dans le cas d'un array qui comprend x données (qui peut changer à
chaque fois).
comment je peux mettre dans la fonction maFonction() chaque paramètre ?
pour qu'au final j'ai par ex :
maFonction(array[0], array[1]);
ou
maFonction(array[0], array[1], array[2]);
La fonction maFonction() n'a pas de paramètre. si je lui en passe ok, j'arrive à les récupérer (même si le nombre est variable) car je sais combien de paramètre je lui passe et que les variable sont en dur. ex : maFonction($var1, $var2);
mais dans le cas d'un array qui comprend x données (qui peut changer à chaque fois).
comment je peux mettre dans la fonction maFonction() chaque paramètre ?
pour qu'au final j'ai par ex :
maFonction(array[0], array[1]); ou maFonction(array[0], array[1], array[2]);
merci de votre aide
Fredchou
Le 24/06/2012 17:54, Y a Personne a écrit :
me suis sans doute mal exprimé.
La fonction maFonction() n'a pas de paramètre. si je lui en passe ok, j'arrive à les récupérer (même si le nombre est variable) car je sais combien de paramètre je lui passe et que les variable sont en dur. ex : maFonction($var1, $var2);
mais dans le cas d'un array qui comprend x données (qui peut changer à chaque fois).
comment je peux mettre dans la fonction maFonction() chaque paramètre ?
pour qu'au final j'ai par ex :
maFonction(array[0], array[1]); ou maFonction(array[0], array[1], array[2]);
merci de votre aide
Si je comprends bien (entre les lignes), tu veux passer le contenu (variable) de ton tableau en paramètre de ta fonction puis utiliser le contenu de ce tableau dans la fonction.
$Params = array("pomme", "poire", "abricot");
maFonction($Params);
function maFonction($tableau) { foreach($tableau as $fruit) echo "Fruit : $fruit <br>n";
$nbFruits=count($tableau); echo "Nombre total de fruits : $nbFruits <br>n"; }
-- Fredchou mailto:
Le 24/06/2012 17:54, Y a Personne a écrit :
me suis sans doute mal exprimé.
La fonction maFonction() n'a pas de paramètre. si je lui en passe ok,
j'arrive à les récupérer (même si le nombre est variable) car je sais
combien de paramètre je lui passe et que les variable sont en dur. ex :
maFonction($var1, $var2);
mais dans le cas d'un array qui comprend x données (qui peut changer à
chaque fois).
comment je peux mettre dans la fonction maFonction() chaque paramètre ?
pour qu'au final j'ai par ex :
maFonction(array[0], array[1]);
ou
maFonction(array[0], array[1], array[2]);
merci de votre aide
Si je comprends bien (entre les lignes), tu veux passer le contenu
(variable) de ton tableau en paramètre de ta fonction puis utiliser le
contenu de ce tableau dans la fonction.
$Params = array("pomme", "poire", "abricot");
maFonction($Params);
function maFonction($tableau)
{
foreach($tableau as $fruit)
echo "Fruit : $fruit <br>n";
$nbFruits=count($tableau);
echo "Nombre total de fruits : $nbFruits <br>n";
}
La fonction maFonction() n'a pas de paramètre. si je lui en passe ok, j'arrive à les récupérer (même si le nombre est variable) car je sais combien de paramètre je lui passe et que les variable sont en dur. ex : maFonction($var1, $var2);
mais dans le cas d'un array qui comprend x données (qui peut changer à chaque fois).
comment je peux mettre dans la fonction maFonction() chaque paramètre ?
pour qu'au final j'ai par ex :
maFonction(array[0], array[1]); ou maFonction(array[0], array[1], array[2]);
merci de votre aide
Si je comprends bien (entre les lignes), tu veux passer le contenu (variable) de ton tableau en paramètre de ta fonction puis utiliser le contenu de ce tableau dans la fonction.
$Params = array("pomme", "poire", "abricot");
maFonction($Params);
function maFonction($tableau) { foreach($tableau as $fruit) echo "Fruit : $fruit <br>n";
$nbFruits=count($tableau); echo "Nombre total de fruits : $nbFruits <br>n"; }
-- Fredchou mailto:
Clément
Le 24/06/2012 17:54, Y a Personne a écrit :
me suis sans doute mal exprimé.
La fonction maFonction() n'a pas de paramètre. si je lui en passe ok, j'arrive à les récupérer (même si le nombre est variable) car je sais combien de paramètre je lui passe et que les variable sont en dur. ex : maFonction($var1, $var2);
mais dans le cas d'un array qui comprend x données (qui peut changer à chaque fois).
comment je peux mettre dans la fonction maFonction() chaque paramètre ?
pour qu'au final j'ai par ex :
maFonction(array[0], array[1]); ou maFonction(array[0], array[1], array[2]);
merci de votre aide
Je pense que vous cherchez func_get_args() :) http://fr2.php.net/manual/fr/function.func-get-args.php
Exemple :
function maFonction(){ var_dump(func_get_args()); }
$Params = array("pomme", "poire", "abricot");
maFonction($Params); // donne le resultat de var_dump($Params) maFonction('coucou'); // donne array(1) { [0]=> string(6) "coucou" }
Le 24/06/2012 17:54, Y a Personne a écrit :
me suis sans doute mal exprimé.
La fonction maFonction() n'a pas de paramètre. si je lui en passe ok,
j'arrive à les récupérer (même si le nombre est variable) car je sais
combien de paramètre je lui passe et que les variable sont en dur. ex :
maFonction($var1, $var2);
mais dans le cas d'un array qui comprend x données (qui peut changer à
chaque fois).
comment je peux mettre dans la fonction maFonction() chaque paramètre ?
pour qu'au final j'ai par ex :
maFonction(array[0], array[1]);
ou
maFonction(array[0], array[1], array[2]);
merci de votre aide
Je pense que vous cherchez func_get_args() :)
http://fr2.php.net/manual/fr/function.func-get-args.php
Exemple :
function maFonction(){
var_dump(func_get_args());
}
$Params = array("pomme", "poire", "abricot");
maFonction($Params);
// donne le resultat de var_dump($Params)
maFonction('coucou');
// donne array(1) { [0]=> string(6) "coucou" }
La fonction maFonction() n'a pas de paramètre. si je lui en passe ok, j'arrive à les récupérer (même si le nombre est variable) car je sais combien de paramètre je lui passe et que les variable sont en dur. ex : maFonction($var1, $var2);
mais dans le cas d'un array qui comprend x données (qui peut changer à chaque fois).
comment je peux mettre dans la fonction maFonction() chaque paramètre ?
pour qu'au final j'ai par ex :
maFonction(array[0], array[1]); ou maFonction(array[0], array[1], array[2]);
merci de votre aide
Je pense que vous cherchez func_get_args() :) http://fr2.php.net/manual/fr/function.func-get-args.php
Exemple :
function maFonction(){ var_dump(func_get_args()); }
$Params = array("pomme", "poire", "abricot");
maFonction($Params); // donne le resultat de var_dump($Params) maFonction('coucou'); // donne array(1) { [0]=> string(6) "coucou" }
Y a Personne
Le 24/06/2012 18:22, Fredchou a écrit :
Le 24/06/2012 17:54, Y a Personne a écrit :
me suis sans doute mal exprimé.
La fonction maFonction() n'a pas de paramètre. si je lui en passe ok, j'arrive à les récupérer (même si le nombre est variable) car je sais combien de paramètre je lui passe et que les variable sont en dur. ex : maFonction($var1, $var2);
mais dans le cas d'un array qui comprend x données (qui peut changer à chaque fois).
comment je peux mettre dans la fonction maFonction() chaque paramètre ?
pour qu'au final j'ai par ex :
maFonction(array[0], array[1]); ou maFonction(array[0], array[1], array[2]);
merci de votre aide
Si je comprends bien (entre les lignes), tu veux passer le contenu (variable) de ton tableau en paramètre de ta fonction puis utiliser le contenu de ce tableau dans la fonction.
$Params = array("pomme", "poire", "abricot");
maFonction($Params);
function maFonction($tableau) { foreach($tableau as $fruit) echo "Fruit : $fruit <br>n";
$nbFruits=count($tableau); echo "Nombre total de fruits : $nbFruits <br>n"; }
oui, merci
ca je savais mais sur ton exemple qui est aussi dans la page que tu m'as donné, il n'y a qu'1 paramètre à la fonction, alors que j'en voudrais autant que de données présent dans le array et ca je pense pas que ce soit possible.
merci de ton aide
Le 24/06/2012 18:22, Fredchou a écrit :
Le 24/06/2012 17:54, Y a Personne a écrit :
me suis sans doute mal exprimé.
La fonction maFonction() n'a pas de paramètre. si je lui en passe ok,
j'arrive à les récupérer (même si le nombre est variable) car je sais
combien de paramètre je lui passe et que les variable sont en dur. ex :
maFonction($var1, $var2);
mais dans le cas d'un array qui comprend x données (qui peut changer à
chaque fois).
comment je peux mettre dans la fonction maFonction() chaque paramètre ?
pour qu'au final j'ai par ex :
maFonction(array[0], array[1]);
ou
maFonction(array[0], array[1], array[2]);
merci de votre aide
Si je comprends bien (entre les lignes), tu veux passer le contenu
(variable) de ton tableau en paramètre de ta fonction puis utiliser le
contenu de ce tableau dans la fonction.
$Params = array("pomme", "poire", "abricot");
maFonction($Params);
function maFonction($tableau)
{
foreach($tableau as $fruit)
echo "Fruit : $fruit <br>n";
$nbFruits=count($tableau);
echo "Nombre total de fruits : $nbFruits <br>n";
}
oui, merci
ca je savais mais sur ton exemple qui est aussi dans la page que tu m'as
donné, il n'y a qu'1 paramètre à la fonction, alors que j'en voudrais
autant que de données présent dans le array et ca je pense pas que ce
soit possible.
La fonction maFonction() n'a pas de paramètre. si je lui en passe ok, j'arrive à les récupérer (même si le nombre est variable) car je sais combien de paramètre je lui passe et que les variable sont en dur. ex : maFonction($var1, $var2);
mais dans le cas d'un array qui comprend x données (qui peut changer à chaque fois).
comment je peux mettre dans la fonction maFonction() chaque paramètre ?
pour qu'au final j'ai par ex :
maFonction(array[0], array[1]); ou maFonction(array[0], array[1], array[2]);
merci de votre aide
Si je comprends bien (entre les lignes), tu veux passer le contenu (variable) de ton tableau en paramètre de ta fonction puis utiliser le contenu de ce tableau dans la fonction.
$Params = array("pomme", "poire", "abricot");
maFonction($Params);
function maFonction($tableau) { foreach($tableau as $fruit) echo "Fruit : $fruit <br>n";
$nbFruits=count($tableau); echo "Nombre total de fruits : $nbFruits <br>n"; }
oui, merci
ca je savais mais sur ton exemple qui est aussi dans la page que tu m'as donné, il n'y a qu'1 paramètre à la fonction, alors que j'en voudrais autant que de données présent dans le array et ca je pense pas que ce soit possible.
merci de ton aide
Y a Personne
Le 24/06/2012 19:31, Clément a écrit :
Le 24/06/2012 17:54, Y a Personne a écrit :
me suis sans doute mal exprimé.
La fonction maFonction() n'a pas de paramètre. si je lui en passe ok, j'arrive à les récupérer (même si le nombre est variable) car je sais combien de paramètre je lui passe et que les variable sont en dur. ex : maFonction($var1, $var2);
mais dans le cas d'un array qui comprend x données (qui peut changer à chaque fois).
comment je peux mettre dans la fonction maFonction() chaque paramètre ?
pour qu'au final j'ai par ex :
maFonction(array[0], array[1]); ou maFonction(array[0], array[1], array[2]);
merci de votre aide
Je pense que vous cherchez func_get_args() :) http://fr2.php.net/manual/fr/function.func-get-args.php
Exemple :
function maFonction(){ var_dump(func_get_args()); }
$Params = array("pomme", "poire", "abricot");
maFonction($Params); // donne le resultat de var_dump($Params) maFonction('coucou'); // donne array(1) { [0]=> string(6) "coucou" }
merci, oui, j'utilise func_get_args dans ma fonction,
mais ce que je cherche à faire, c'est pouvoir passer autant de paramètres qu'il y a de valeurs dans mon array
Le 24/06/2012 19:31, Clément a écrit :
Le 24/06/2012 17:54, Y a Personne a écrit :
me suis sans doute mal exprimé.
La fonction maFonction() n'a pas de paramètre. si je lui en passe ok,
j'arrive à les récupérer (même si le nombre est variable) car je sais
combien de paramètre je lui passe et que les variable sont en dur. ex :
maFonction($var1, $var2);
mais dans le cas d'un array qui comprend x données (qui peut changer à
chaque fois).
comment je peux mettre dans la fonction maFonction() chaque paramètre ?
pour qu'au final j'ai par ex :
maFonction(array[0], array[1]);
ou
maFonction(array[0], array[1], array[2]);
merci de votre aide
Je pense que vous cherchez func_get_args() :)
http://fr2.php.net/manual/fr/function.func-get-args.php
Exemple :
function maFonction(){
var_dump(func_get_args());
}
$Params = array("pomme", "poire", "abricot");
maFonction($Params);
// donne le resultat de var_dump($Params)
maFonction('coucou');
// donne array(1) { [0]=> string(6) "coucou" }
merci, oui, j'utilise func_get_args dans ma fonction,
mais ce que je cherche à faire, c'est pouvoir passer autant de
paramètres qu'il y a de valeurs dans mon array
La fonction maFonction() n'a pas de paramètre. si je lui en passe ok, j'arrive à les récupérer (même si le nombre est variable) car je sais combien de paramètre je lui passe et que les variable sont en dur. ex : maFonction($var1, $var2);
mais dans le cas d'un array qui comprend x données (qui peut changer à chaque fois).
comment je peux mettre dans la fonction maFonction() chaque paramètre ?
pour qu'au final j'ai par ex :
maFonction(array[0], array[1]); ou maFonction(array[0], array[1], array[2]);
merci de votre aide
Je pense que vous cherchez func_get_args() :) http://fr2.php.net/manual/fr/function.func-get-args.php
Exemple :
function maFonction(){ var_dump(func_get_args()); }
$Params = array("pomme", "poire", "abricot");
maFonction($Params); // donne le resultat de var_dump($Params) maFonction('coucou'); // donne array(1) { [0]=> string(6) "coucou" }
merci, oui, j'utilise func_get_args dans ma fonction,
mais ce que je cherche à faire, c'est pouvoir passer autant de paramètres qu'il y a de valeurs dans mon array
Olivier Miakinen
Bonjour,
Le 24/06/2012 17:54, Y a Personne a écrit :
me suis sans doute mal exprimé.
La fonction maFonction() n'a pas de paramètre. si je lui en passe ok, j'arrive à les récupérer (même si le nombre est variable) car je sais combien de paramètre je lui passe et que les variable sont en dur. ex : maFonction($var1, $var2);
mais dans le cas d'un array qui comprend x données (qui peut changer à chaque fois).
comment je peux mettre dans la fonction maFonction() chaque paramètre ?
pour qu'au final j'ai par ex :
maFonction(array[0], array[1]); ou maFonction(array[0], array[1], array[2]);
Tout d'abord, puisque tu as la maîtrise de la fonction maFonction(), l'idéal serait de permettre de lui passer un tableau en lieu et place des arguments en nombre variable.
Par exemple, si le premier argument ne peut pas être un tableau, tu fais : if (is_array(premier argument)) { lire les arguments dans le tableau } else { faire comme avant }
Si ce n'est pas le cas, mais qu'une valeur ne peut jamais être passée comme premier argument (exemples : "", -1, NULL, etc.) tu peux mettre cette valeur particulière en premier argument et le tableau en deuxième argument.
************
Supposons que rien de ce qui précède ne t'agrée. Alors voici une autre proposition. C'est moche, mais c'est tant pis pour toi...
switch(count($a)) { case 0 : maFonction(); break; case 1 : maFonction($a[0]); break; case 2 : maFonction($a[0], $a[1]); break; case 3 : maFonction($a[0], $a[1], $a[2]); break; case 4 : maFonction($a[0], $a[1], $a[2], $a[3]); break; case 5 : maFonction($a[0], $a[1], $a[2], $a[3], $a[4]); break; default: echo "Au secours, programmeur, il me manque des 'case' !"; exit; }
Et en encore plus moche, tu peux utiliser eval().
Cordialement, -- Olivier Miakinen
Bonjour,
Le 24/06/2012 17:54, Y a Personne a écrit :
me suis sans doute mal exprimé.
La fonction maFonction() n'a pas de paramètre. si je lui en passe ok,
j'arrive à les récupérer (même si le nombre est variable) car je sais
combien de paramètre je lui passe et que les variable sont en dur. ex :
maFonction($var1, $var2);
mais dans le cas d'un array qui comprend x données (qui peut changer à
chaque fois).
comment je peux mettre dans la fonction maFonction() chaque paramètre ?
pour qu'au final j'ai par ex :
maFonction(array[0], array[1]);
ou
maFonction(array[0], array[1], array[2]);
Tout d'abord, puisque tu as la maîtrise de la fonction maFonction(),
l'idéal serait de permettre de lui passer un tableau en lieu et
place des arguments en nombre variable.
Par exemple, si le premier argument ne peut pas être un tableau,
tu fais :
if (is_array(premier argument)) {
lire les arguments dans le tableau
} else {
faire comme avant
}
Si ce n'est pas le cas, mais qu'une valeur ne peut jamais être
passée comme premier argument (exemples : "", -1, NULL, etc.) tu
peux mettre cette valeur particulière en premier argument et le
tableau en deuxième argument.
************
Supposons que rien de ce qui précède ne t'agrée. Alors voici une
autre proposition. C'est moche, mais c'est tant pis pour toi...
switch(count($a)) {
case 0 : maFonction(); break;
case 1 : maFonction($a[0]); break;
case 2 : maFonction($a[0], $a[1]); break;
case 3 : maFonction($a[0], $a[1], $a[2]); break;
case 4 : maFonction($a[0], $a[1], $a[2], $a[3]); break;
case 5 : maFonction($a[0], $a[1], $a[2], $a[3], $a[4]); break;
default:
echo "Au secours, programmeur, il me manque des 'case' !"; exit;
}
La fonction maFonction() n'a pas de paramètre. si je lui en passe ok, j'arrive à les récupérer (même si le nombre est variable) car je sais combien de paramètre je lui passe et que les variable sont en dur. ex : maFonction($var1, $var2);
mais dans le cas d'un array qui comprend x données (qui peut changer à chaque fois).
comment je peux mettre dans la fonction maFonction() chaque paramètre ?
pour qu'au final j'ai par ex :
maFonction(array[0], array[1]); ou maFonction(array[0], array[1], array[2]);
Tout d'abord, puisque tu as la maîtrise de la fonction maFonction(), l'idéal serait de permettre de lui passer un tableau en lieu et place des arguments en nombre variable.
Par exemple, si le premier argument ne peut pas être un tableau, tu fais : if (is_array(premier argument)) { lire les arguments dans le tableau } else { faire comme avant }
Si ce n'est pas le cas, mais qu'une valeur ne peut jamais être passée comme premier argument (exemples : "", -1, NULL, etc.) tu peux mettre cette valeur particulière en premier argument et le tableau en deuxième argument.
************
Supposons que rien de ce qui précède ne t'agrée. Alors voici une autre proposition. C'est moche, mais c'est tant pis pour toi...
switch(count($a)) { case 0 : maFonction(); break; case 1 : maFonction($a[0]); break; case 2 : maFonction($a[0], $a[1]); break; case 3 : maFonction($a[0], $a[1], $a[2]); break; case 4 : maFonction($a[0], $a[1], $a[2], $a[3]); break; case 5 : maFonction($a[0], $a[1], $a[2], $a[3], $a[4]); break; default: echo "Au secours, programmeur, il me manque des 'case' !"; exit; }
Et en encore plus moche, tu peux utiliser eval().
Cordialement, -- Olivier Miakinen
Y a Personne
Le 25/06/2012 01:19, Olivier Miakinen a écrit :
Bonjour,
Le 24/06/2012 17:54, Y a Personne a écrit :
me suis sans doute mal exprimé.
La fonction maFonction() n'a pas de paramètre. si je lui en passe ok, j'arrive à les récupérer (même si le nombre est variable) car je sais combien de paramètre je lui passe et que les variable sont en dur. ex : maFonction($var1, $var2);
mais dans le cas d'un array qui comprend x données (qui peut changer à chaque fois).
comment je peux mettre dans la fonction maFonction() chaque paramètre ?
pour qu'au final j'ai par ex :
maFonction(array[0], array[1]); ou maFonction(array[0], array[1], array[2]);
Tout d'abord, puisque tu as la maîtrise de la fonction maFonction(), l'idéal serait de permettre de lui passer un tableau en lieu et place des arguments en nombre variable.
Par exemple, si le premier argument ne peut pas être un tableau, tu fais : if (is_array(premier argument)) { lire les arguments dans le tableau } else { faire comme avant }
Si ce n'est pas le cas, mais qu'une valeur ne peut jamais être passée comme premier argument (exemples : "", -1, NULL, etc.) tu peux mettre cette valeur particulière en premier argument et le tableau en deuxième argument.
************
Supposons que rien de ce qui précède ne t'agrée. Alors voici une autre proposition. C'est moche, mais c'est tant pis pour toi...
switch(count($a)) { case 0 : maFonction(); break; case 1 : maFonction($a[0]); break; case 2 : maFonction($a[0], $a[1]); break; case 3 : maFonction($a[0], $a[1], $a[2]); break; case 4 : maFonction($a[0], $a[1], $a[2], $a[3]); break; case 5 : maFonction($a[0], $a[1], $a[2], $a[3], $a[4]); break; default: echo "Au secours, programmeur, il me manque des 'case' !"; exit; }
Et en encore plus moche, tu peux utiliser eval().
Cordialement,
merci de ta réponse.
j'ai effectivement pensé un moment à faire comme ton dernier exemple mais me suis retenu.
J'ai pendant la nuit retravaillé ma fonction pour qu'elle accepte des arguments array et/ou simple ce qui est effectivement la meilleur solution.
Mais je pensais qu'il y avait une astuce (prévue par php) pour faire ce que je voulais mais apparemment pas.
Merci de votre aide
Le 25/06/2012 01:19, Olivier Miakinen a écrit :
Bonjour,
Le 24/06/2012 17:54, Y a Personne a écrit :
me suis sans doute mal exprimé.
La fonction maFonction() n'a pas de paramètre. si je lui en passe ok,
j'arrive à les récupérer (même si le nombre est variable) car je sais
combien de paramètre je lui passe et que les variable sont en dur. ex :
maFonction($var1, $var2);
mais dans le cas d'un array qui comprend x données (qui peut changer à
chaque fois).
comment je peux mettre dans la fonction maFonction() chaque paramètre ?
pour qu'au final j'ai par ex :
maFonction(array[0], array[1]);
ou
maFonction(array[0], array[1], array[2]);
Tout d'abord, puisque tu as la maîtrise de la fonction maFonction(),
l'idéal serait de permettre de lui passer un tableau en lieu et
place des arguments en nombre variable.
Par exemple, si le premier argument ne peut pas être un tableau,
tu fais :
if (is_array(premier argument)) {
lire les arguments dans le tableau
} else {
faire comme avant
}
Si ce n'est pas le cas, mais qu'une valeur ne peut jamais être
passée comme premier argument (exemples : "", -1, NULL, etc.) tu
peux mettre cette valeur particulière en premier argument et le
tableau en deuxième argument.
************
Supposons que rien de ce qui précède ne t'agrée. Alors voici une
autre proposition. C'est moche, mais c'est tant pis pour toi...
switch(count($a)) {
case 0 : maFonction(); break;
case 1 : maFonction($a[0]); break;
case 2 : maFonction($a[0], $a[1]); break;
case 3 : maFonction($a[0], $a[1], $a[2]); break;
case 4 : maFonction($a[0], $a[1], $a[2], $a[3]); break;
case 5 : maFonction($a[0], $a[1], $a[2], $a[3], $a[4]); break;
default:
echo "Au secours, programmeur, il me manque des 'case' !"; exit;
}
Et en encore plus moche, tu peux utiliser eval().
Cordialement,
merci de ta réponse.
j'ai effectivement pensé un moment à faire comme ton dernier exemple
mais me suis retenu.
J'ai pendant la nuit retravaillé ma fonction pour qu'elle accepte des
arguments array et/ou simple ce qui est effectivement la meilleur solution.
Mais je pensais qu'il y avait une astuce (prévue par php) pour faire ce
que je voulais mais apparemment pas.
La fonction maFonction() n'a pas de paramètre. si je lui en passe ok, j'arrive à les récupérer (même si le nombre est variable) car je sais combien de paramètre je lui passe et que les variable sont en dur. ex : maFonction($var1, $var2);
mais dans le cas d'un array qui comprend x données (qui peut changer à chaque fois).
comment je peux mettre dans la fonction maFonction() chaque paramètre ?
pour qu'au final j'ai par ex :
maFonction(array[0], array[1]); ou maFonction(array[0], array[1], array[2]);
Tout d'abord, puisque tu as la maîtrise de la fonction maFonction(), l'idéal serait de permettre de lui passer un tableau en lieu et place des arguments en nombre variable.
Par exemple, si le premier argument ne peut pas être un tableau, tu fais : if (is_array(premier argument)) { lire les arguments dans le tableau } else { faire comme avant }
Si ce n'est pas le cas, mais qu'une valeur ne peut jamais être passée comme premier argument (exemples : "", -1, NULL, etc.) tu peux mettre cette valeur particulière en premier argument et le tableau en deuxième argument.
************
Supposons que rien de ce qui précède ne t'agrée. Alors voici une autre proposition. C'est moche, mais c'est tant pis pour toi...
switch(count($a)) { case 0 : maFonction(); break; case 1 : maFonction($a[0]); break; case 2 : maFonction($a[0], $a[1]); break; case 3 : maFonction($a[0], $a[1], $a[2]); break; case 4 : maFonction($a[0], $a[1], $a[2], $a[3]); break; case 5 : maFonction($a[0], $a[1], $a[2], $a[3], $a[4]); break; default: echo "Au secours, programmeur, il me manque des 'case' !"; exit; }
Et en encore plus moche, tu peux utiliser eval().
Cordialement,
merci de ta réponse.
j'ai effectivement pensé un moment à faire comme ton dernier exemple mais me suis retenu.
J'ai pendant la nuit retravaillé ma fonction pour qu'elle accepte des arguments array et/ou simple ce qui est effectivement la meilleur solution.
Mais je pensais qu'il y avait une astuce (prévue par php) pour faire ce que je voulais mais apparemment pas.
Merci de votre aide
newdb
Y a Personne wrote:
Mais je pensais qu'il y avait une astuce (prévue par php) pour faire ce que je voulais mais apparemment pas.
peut-être voir du côté de la fonction extract : http://php.net/manual/fr/function.extract.php
-- @@@@@ E -00 comme on est very beaux dis ! ' `) / |_ =="
Y a Personne <yapersonne@gmail.com> wrote:
Mais je pensais qu'il y avait une astuce (prévue par php) pour faire ce
que je voulais mais apparemment pas.
peut-être voir du côté de la fonction extract :
http://php.net/manual/fr/function.extract.php
--
@@@@@
E -00 comme on est very beaux dis !
' `) /
|_ =="