Tenir compte cette fonction:
$missed = "{716C1AD7-0DA6-45e6-854E-4B466508EB96}"
function Test($foo = $missed, $bar = $missed)
{
if(!$foo)
{
throw "error"
}
if(!$bar)
{
throw "error"
}
}
Je whould aime appeler cette fonction ainsi
Test -foo $foo -bar $bar
Mais si foo $ ou $ bar est $ null, exception sera levée. La solution naïve est
if($foo -and $bar)
{
Test -foo $foo -bar $bar
}
elseif ($foo)
{
Test -foo $foo
}
elseif ($bar)
{
Test -bar $bar
}
else
{
Test
}
Comment puis-je réécrire ce bloc if/else en une/deux lignes?
En fait, je n'ai pas accès à l'implémentation de la fonction Test et à la variable $ missing. C'était juste une illustration. Je sais juste que cette fonction déclenche une erreur quand l'un des paramètres est $ null – alex2k8
Ensuite, si vous savez ce que la fonction définit comme valeur manquante ($ missing), pouvez-vous les définir avant de l'appeler, signifiant que les 2 ifs ci-dessus vont avant appel de fonction. –