0
$random = rand(4, 23);
$range = range(1, $random );

嗨..伙计们,我在 foreach 函数中有一个随机范围值,我想用以下规则显示.. 我的目标是像方形框一样显示

如果我得到范围 1 到 3,它必须像这样显示表格

1 2
3

如果范围从 1 到 6

1 2 3
4 5 6

如果范围从 1 到 19

1   2  3  4  5
6   7  8  9 10
11 12 13 14 15
16 17 18 19
4

1 回答 1

1

获取记录数的平方根的 ceil,然后只要您处于该值的 mod 等于 0 的索引处,就开始新的一行。因为你已经有类似的$random东西:

$dim = ceil(sqrt($random));

foreach ($range as $index => $number) {
    print $number;
    if (!(($index + 1) % $dim)) {
      print "\n";
    }
    else {
      print " ";
    }
}

可能需要一些调整(我不在 PHP 模式 atm 中)并且也不考虑填充,但这应该很简单。

于 2012-09-19T19:53:27.663 回答