PHP,按计数循环遍历动态数组

时间:2019-05-27 03:05:03

标签: php arrays

所以我正在研究一个JQuery步骤表单。正在使用数据库中的动态信息填充它。我有一个特定的项目列表,它是数组中的21个项目。我想将这些细分为每步5或6个组,因此表格不会太长。

例如,我知道可以使用array_slice,但是由于该列表是动态的,因此我不知道总会有多少个。从某种意义上来说,它将是分页的,但是我不需要分页链接等。只是一种返回5个项目的方法,然后返回5个项目,如果最后一次迭代仅包含2个项目,那么就是这样。

例如:

$array = ( 
  array(
    "name" => "Peter Parker",
    "alterego" => "Spiderman",
  ),
  array(
    "name" => "Clark Kent",
    "alterego" => "Superman",
  ), 
  array(
    "name" => "Bruce Wayne",
    "alterego" => "Batman",
  ),
);

然后我想细分为每个组仅列出2个项目。

2 个答案:

答案 0 :(得分:1)

您可以使用array_chunk例如

$chunks = array_chunk($array, 5);
foreach ($chunks as $chunk) {
    // display form for these 5 values
}

答案 1 :(得分:1)

Andreas”的初步建议很好。也许在这里,我们可能想根据我们希望的分页大小设计一些回调函数:

array_slice($array, getChunkStart($array), getChunkLength($array));

或仅查找特定的列大小:

array_chunk($array, sizeof(array_column($array, "column_key")));