Delen via


Over If

KORTE BESCHRIJVING

Beschrijft een taalopdracht die u kunt gebruiken om instructielijsten uit te voeren op basis van de resultaten van een of meer voorwaardelijke tests.

LANGE BESCHRIJVING

U kunt de If-instructie gebruiken om codeblokken uit te voeren als een opgegeven voorwaardelijke test waar oplevert. U kunt ook een of meer aanvullende voorwaardelijke tests opgeven die moeten worden uitgevoerd als alle voorgaande tests onwaar zijn. Ten slotte kunt u een extra codeblok opgeven dat wordt uitgevoerd als geen andere voorwaardelijke test waar oplevert.

Syntax

In het volgende voorbeeld ziet u de syntaxis van de If-instructie:

if (<test1>)
    {<statement list 1>}
[elseif (<test2>)
    {<statement list 2>}]
[else
    {<statement list 3>}]

Wanneer u een If-instructie uitvoert, evalueert PowerShell de <test1> voorwaardelijke expressie als true of false. Als <test1> waar is, <statement list 1> wordt uitgevoerd en powershell sluit de if-instructie af. Als <test1> false is, evalueert PowerShell de voorwaarde die is opgegeven door de <test2> voorwaardelijke instructie.

Als <test2> waar is, <statement list 2> wordt uitgevoerd en powershell sluit de if-instructie af. Als beide <test1> onwaar <test2> zijn, wordt het <statement list 3> codeblok uitgevoerd en sluit PowerShell de If-instructie af.

U kunt meerdere Elseif-instructies gebruiken om een reeks voorwaardelijke tests te koppelen. Elke test wordt dus alleen uitgevoerd als alle vorige tests onwaar zijn. Als u een If-instructie wilt maken die veel Elseif-instructies bevat, kunt u in plaats daarvan een Switch-instructie gebruiken.

Voorbeelden:

De eenvoudigste If-instructie bevat één opdracht en bevat geen Elseif-instructies of Else-instructies. In het volgende voorbeeld ziet u de eenvoudigste vorm van de if-instructie:

if ($a -gt 2) {
    Write-Host "The value $a is greater than 2."
}

Als in dit voorbeeld de variabele $a groter is dan 2, wordt de voorwaarde als waar geëvalueerd en wordt de instructielijst uitgevoerd. Als $a echter kleiner is dan of gelijk is aan 2 of geen bestaande variabele is, wordt met de if-instructie geen bericht weergegeven.

Door een Else-instructie toe te voegen, wordt een bericht weergegeven wanneer $a kleiner is dan of gelijk is aan 2. Zoals in het volgende voorbeeld wordt weergegeven:

if ($a -gt 2) {
    Write-Host "The value $a is greater than 2."
}
else {
    Write-Host ("The value $a is less than or equal to 2," +
        " is not created or is not initialized.")
}

Als u dit voorbeeld verder wilt verfijnen, kunt u de Elseif-instructie gebruiken om een bericht weer te geven wanneer de waarde van $a gelijk is aan 2. Zoals in het volgende voorbeeld wordt weergegeven:

if ($a -gt 2) {
    Write-Host "The value $a is greater than 2."
}
elseif ($a -eq 2) {
    Write-Host "The value $a is equal to 2."
}
else {
    Write-Host ("The value $a is less than 2 or" +
        " was not created or initialized.")
}

ZIE OOK

about_Comparison_Operators

about_Switch