php 三列数组 组合,php – 如何在三列中分配数组的值?

你可以做一个循环,自动在每三个元素上插入一个新行:

$values = array(1,1,1,1,1);

foreach($values as $i => $value) {

printf('%-4d', $value);

if($i % 3 === 2) echo "\n";

}

编辑:由于您添加了更多信息,这是您想要的:

$values = array(1,2,3,4,5);

for($line = 0; $line < 2; $line++) {

if($line !== 0) echo "\n";

for($i = $line; $i < count($values); $i+=2) {

printf('%-4d', $values[$i]);

}

}

如果你想捆绑函数中的所有内容:

function print_values_table($array, $lines = 3, $format = "%-4d") {

$values = array_values($array);

$count = count($values);

for($line = 0; $line < $lines; $line++) {

if($line !== 0) echo "\n";

for($i = $line; $i < $count; $i += $lines) {

printf($format, $values[$i]);

}

}

}

编辑2:这是一个修改版本,将列数限制为3.

function print_values_table($array, $maxCols = 3, $format = "%-4d") {

$values = array_values($array);

$count = count($values);

$lines = ceil($count / $maxCols);

for($line = 0; $line < $lines; $line++) {

if($line !== 0) echo "\n";

for($i = $line; $i < $count; $i += $lines) {

printf($format, $values[$i]);

}

}

}

那么,以下内容:

$values = range(1,25);

print_array_table($values);

输出这个:

1 10 19

2 11 20

3 12 21

4 13 22

5 14 23

6 15 24

7 16 25

8 17

9 18

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值