Cel mai bun răspuns
Cum ies dintr-o buclă foreach în PowerShell?
Dacă nu treci un infinit numărul de obiecte în buclă, bucla pentru fiecare buclă se va termina singură odată fiecare dintre obiecte este procesată.
pentru fiecare ( $ obj în $ array)
Puteți termina prematur cu logică condițională în procesul buclei. De exemplu, dacă un obiect corespunde unei condiții, rupe bucla.
[bool[]]$array
foreach($obj in $array)
{
if ($obj -eq $false)
{
break
}
else
{
#do something
}
}
Alte tipuri de bucle, cum ar fi buclele și buclele do-while / do-until, sunt mult mai predispuse la rularea infinită din cauza parametrilor init init.
Răspuns
Utilizați ` break `, de exemplu:
foreach ($val in $vals) {
if ($val -eq 10) {
break
}
}