当你在PHP foreach循环中到达数组的末尾时,无论如何只是从头开始再次?
我正在使用一组不同人的JS和PHP构建图表。我希望图表上的每个人都有不同的颜色,但人数会有所不同而且未知。
我已经构建了一个十六进制代码数组来循环,但问题是当人数超过数组中十六进制代码的数量时会抛出错误。
我意识到我可以复制并粘贴十六进制代码,直到人数超过人数但它看起来不是一个非常优雅的解决方案。
有什么想法吗?
答案 0 :(得分:1)
好吧,假设N
是C
数组(颜色)的长度,而P
是你的人数组。
单独保留foreach循环并使用普通的旧for循环,i
作为循环变量。然后,对于P[i]
人,颜色将为C[i%N]
答案 1 :(得分:0)
可能您可以使用'for'循环而不是'foreach',并执行以下操作。
for($i=0;$i<count($hex_array);$i++)
{
if($i>=(count($hex_array)-1))
{
$i=0;
}
enter code here
}
答案 2 :(得分:0)
要回答您的问题,请使用reset()
那就是说,它可能不是你需要做的最明智的解决方案,@ David Jesh提出了一个很好的建议。