【发布时间】:2018-09-24 15:42:31
【问题描述】:
我在一个数组中有很多文件
name1
name2
name3
name4
我将这个数量的文件计算如下:
$total = count($files); // total of 4 files for example
但我想了解如何将 for 语句与 foreach 结合使用
for ($x=1; $x<=$total; $x++) {
foreach($files as $file)
{
echo "http://$file";
echo $x;
}
}
这样的结果是:
name1 1
name1 1
name1 1
name1 1
name1 2
name1 2
name1 2
name1 2
name1 3
name1 3
name1 3
name1 3
name1 4
name1 4
name1 4
name1 4
name1 5
name1 5
name1 5
name1 5
我希望结果是
name1 1
name2 2
name3 3
name4 4
但是我很难理解逻辑,关于同时使用 foreach 和 for。
【问题讨论】:
-
不可能,foreach 是一个阻塞调用,因此它完成,然后 for 循环继续进行下一次迭代。
-
我认为
while然后foreach会更好? -
你不需要 FOR 来做你正在做的事情
-
你需要一个 for(计算元素)或一个 foreach(不需要计算元素来遍历主题)
-
@Gislef 就它是否可能而言,您所做的只是初始化一个变量并增加它的值。
++和--运算符不是为for循环保留的。