Php 使用forloop填充括号

Php 使用forloop填充括号,php,loops,for-loop,Php,Loops,For Loop,我想学习使用for循环填充括号,例如:- $max从8开始,最多可为512。我只知道forloop的基本知识,不太了解下面的括号。。有人能帮我解释一下他们是怎么做到的吗。 每个都进入简单的模式/顺序 我非常感激 $max = 8; if($max == 8) [[0, 0], [0, 0]], [[0, 0], [0, 0]], [[0, 0]], [[0, 0]] if($max == 16) [[0,0], [0,0], [0,0], [0,0]], [[0,0], [0,0

我想学习使用for循环填充括号,例如:- $max从8开始,最多可为512。我只知道forloop的基本知识,不太了解下面的括号。。有人能帮我解释一下他们是怎么做到的吗。 每个都进入简单的模式/顺序

我非常感激

$max = 8;

if($max == 8)

[[0, 0], [0, 0]],   
[[0, 0], [0, 0]], 
[[0, 0]],
[[0, 0]]

if($max == 16)

[[0,0], [0,0], [0,0], [0,0]],
[[0,0], [0,0], [0,0], [0,0]],
[[0,0], [0,0]],
[[0,0], [0,0]],
[[0,0]],
[[0,0]]

if($max == 32)

[[0,0], [0,0], [0,0], [0,0], [0,0], [0,0], [0,0], [0,0]],
[[0,0], [0,0], [0,0], [0,0], [0,0], [0,0], [0,0], [0,0]],
[[0,0], [0,0], [0,0], [0,0]],
[[0,0], [0,0], [0,0], [0,0]],
[[0,0], [0,0]],
[[0,0], [0,0]],
[[0,0]],
[[0,0]]
直到512。
谢谢

所以基本上可以这样做:

$max = 8;
$arrays = array();
for($i = $max/4; $i >= 1; $i/=2) {
  $array = array_fill(0, $i, array(0,0));
  $arrays[] = $array;
  $arrays[] = $array;
}
作为字符串:

$max = 8;
$arrays = array();
for($i = $max/4; $i >= 1; $i/=2) {
  $array = array_fill(0, $i, '[0,0]');
  $array = '['.implode(', ', $array).']';
  $arrays[] = $array;
  $arrays[] = $array;
}
$arrays = implode(",\n", $arrays);

这里有两个
$max==32
s..
$max
总是4的倍数吗?另外,您可以在这里很好地阅读php for循环-这里需要的是一个
嵌套for循环
。对不起,$max总是加倍。。8、16、32、64、128、256、512。谢谢,但是如果有意义的话,您能否演示如何使用$arrays[]填充包含我提到的括号的字符串?您希望
[[0,0]、[0,0]]、[[0,0]、[0,0]]、[[0,0]]、[[0,0]]
作为文本字符串吗?还是我在这里误读了你?是的,就像字面字符串一样。