PHP:将数组堆叠在表中的多个列上

标签 php html css

我有一个有趣的问题,似乎早就解决了,但找不到任何东西。

我有一个简单的数组,可变长度。

我需要将数组放在表格中,但只有 X 列宽。意思是,如果数组有 25 个值,而我只想要 3 列,则将有 2 列 11 和 1 列 3(余数)。

像这样(每个数字代表表格单元格中的一个值):

1    12    23
2    13    24
3    14    25
4    15
5    16
6    17
7    18
8    19
9    20
10   21
11   22

我花了一整天的时间,看起来很简单,但要么我的游戏今天不在,要么比我想象的要难。

当然,水平移动没问题,很简单,但垂直移动是必需的,我从来不知道数组的大小和列数会有所不同。

感谢您的帮助!

最佳答案

如果您希望最后一列包含尽可能多的元素以适合其他列(此问题最动态的情况),这将是一个解决方案:

<?php

$numberOfColumns = 3;
$myArray = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25];

$arrayLength = count($myArray); // 25
$columnLength = ceil($arrayLength / $numberOfColumns); // 9

for ($i = 0; $i < $columnLength; $i++) {

  for ($j = 0; $j < $numberOfColumns; $j++) {

    $arrayIndex = $j * $columnLength + $i;
    if ($arrayIndex < $arrayLength) {
      echo $myArray[$arrayIndex] . " ";
    }

  }

  echo '<br>';
}

这是我浏览器的输出:

enter image description here

关于PHP:将数组堆叠在表中的多个列上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39987594/

相关文章:

html - 两列之间的填充影响其他地方的填充

php - PHP 中的大型静态数组

php - 如何使用 PHP Imagick 根据文本框大小对齐文本?

PHP通知和警告的区别

javascript - Angular 2 : Programmatically to position inside div overlay

javascript - 查找嵌套的 <li> 并修改它

php - 条件赋值

html - 中心品牌和左右链接

html - 当父级设置为 inline-flex 时,如何解决 WebKit 上的图像高度问题?

javascript - 不同 iOS 设备(Cordova/phonegap)的 safari 中的不同主体