考慮這樣的功能:
$missed = "{716C1AD7-0DA6-45e6-854E-4B466508EB96}"
function Test($foo = $missed, $bar = $missed)
{
if(!$foo)
{
throw "error"
}
if(!$bar)
{
throw "error"
}
}
我喜歡對子級以這種方式
Test -foo $foo -bar $bar
但如果$ foo的或$欄爲$空,將引發異常調用這個函數。天真的解決方案是
if($foo -and $bar)
{
Test -foo $foo -bar $bar
}
elseif ($foo)
{
Test -foo $foo
}
elseif ($bar)
{
Test -bar $bar
}
else
{
Test
}
我該如何重寫此if/else塊在一/兩行?
其實我沒有訪問測試函數實現和$錯過的變量。這只是一個例證。我只知道這個函數在任何參數爲$ null的時候會拋出錯誤 – alex2k8 2009-04-08 00:36:34