Je suis assez nouveau à PHP et j'essaie de comprendre comment définir un paramètre facultatif après le premier paramètre facultatif?
Par exemple, j'ai le code suivant: p>
echo 'with all parama'; testParam('apple','carrot','some string'); //we get: //with all parama //$fruit = apple //$veg = carrot //Test = some string echo '<hr> missing veg'; testParam('apple','','something'); //we get: //missing veg //$fruit = apple //$veg = //Test = something echo '<hr> This wont work'; testParam('apple',,'i am set');
3 Réponses :
Malheureusement, vous ne pouvez pas faire cela dans PHP. P>
Vous devez passer dans 0 ou null code> ou une autre valeur, puis si la valeur est 0 ou
null code>, changez-la à la valeur par défaut. p>
Vous ne pouvez pas faire ce que vous voulez avec juste des paramètres par défaut. Les valeurs par défaut ne s'appliquent qu'aux arguments manquants, et seuls les derniers arguments peuvent être manquants.
Vous pouvez soit ajouter des lignes telles que P> et appelez la fonction comme function testparam($parms=false) {
$default_parms = array('fruit'=>'orange', 'vega'=>'peas', 'starch'=>'bread');
$parms = array_merge($default_parms, (array) $parms);
echo '<br>fruit = $parms[fruit]';
echo '<br>vega = $parms[vega]';
echo '<br>starch = $parms[starch]';
}
testparm('starch'=>'pancakes');
//we get:
//fruit = orange
//vega = peas
//starch = pancakes
Ceci est la technique que j'utilise: maintenant pour utiliser la valeur par défaut de n'importe quel paramètre facultatif, passez simplement null comme. P> testParam('apple', null, 'some string');