Betrachten wir eine solche Funktion:
$missed = "{716C1AD7-0DA6-45e6-854E-4B466508EB96}"
function Test($foo = $missed, $bar = $missed)
{
if(!$foo)
{
throw "error"
}
if(!$bar)
{
throw "error"
}
}
I whould diese Funktion auf diese Weise
Test -foo $foo -bar $bar
Aber wenn $ foo oder $ bar ist $ null, wird Ausnahme ausgelöst nennen möchte. Die naive Lösung ist
if($foo -and $bar)
{
Test -foo $foo -bar $bar
}
elseif ($foo)
{
Test -foo $foo
}
elseif ($bar)
{
Test -bar $bar
}
else
{
Test
}
Wie kann ich diese if/else-Block in einer/zwei Zeilen umschreiben?
Eigentlich habe ich keinen Zugriff auf Testfunktion Implementierung und $ verpasste Variable. Es war nur eine Illustration. Ich weiß nur, dass diese Funktion einen Fehler auslöst, wenn einer der Parameter $ null ist – alex2k8
Dann, wenn Sie wissen, wofür die Funktion den fehlenden Wert setzt ($ fehlt), können Sie sie vor dem Aufruf setzen, dh die 2 oben geschriebenen ifs gehen vor Funktionsaufruf –