Так что есть много вещей, к которым можно обратиться. Прежде всего цикл foreach
работает с массивом.
Так что ваша декларация переменной неверна. Он должен быть разделен запятыми или в формате массива.
как это
$input = "one", "two", "three"
$tests = "true", "false", "true"
OR
$input = @("one", "two", "three")
$tests = @("true", "false", "true")
Foreach
цикл не может работать одновременно с несколькими массивами; в вашем случае вы должны использовать For
цикл как
$input = "one", "two", "three"
$tests = "true", "false", "true"
foreach ($test in $tests) ## For looping through single array
{
Write-Host $test
}
If($input.Length -match $tests.Length) ## Forlooping through multiple arrays
{
For($i=0;$i -lt $input.Length; $i++)
{
"$($input[$i]) :: $($tests[$i])"
}
}
и для вашего ожидаемого формата , оно должно быть:
$input = "one", "two", "three"
$tests = @("true", "false", "true")
If($input.Length -match $tests.Length)
{
For($i=0;$i -lt $input.Length; $i++)
{
"$($input[$i])"
"$($tests[$i])"
}
}
ВЫВОД:
one
true
two
false
three
true
PS: теперь вы можете легко включить Add-Member -InputObject $tests -MemberType NoteProperty -Name "Name" -Value $input
на основе этой логики.
Надеюсь, это поможет.