我正在练习foreach和for循环,并且将它们结合起来导致我意想不到的结果。下面是for循环语句中的foreach语句。for循环内的foreach;保持循环
PHP:
<?php
$names = array("A", "B", "C", "D");
for ($i = 0; $i <= 3; $i++)
{
foreach ($names as $name)
{
echo "$name = $i ";
}
}
?>
OUTPUT:
A = 0 B = 0 C = 0 D = 0 A = 1 B = 1 C = 1 D = 1 A = 2 B = 2 C = 2 D = 2 A = 3 B = 3 C = 3 D = 3
预期输出:
A = 0 B = 1 C= 2 D = 3
请告诉我我做错了什么,这是什么解决方案。我不想使用数组键和值。 :)
* PS:我不想要使用数组键* < - 在这里有你的答案 – Rizier123
你正在运行嵌套循环,对于'for'循环的每一次迭代,'foreach'循环都会遍历整个'$ names' a rray。所以你有4个外部迭代,3个内部迭代,给你4×3 = 12个'echo'调用。 –
@MarcB我怎么只做一次迭代? –