php实现把数组按指定的个数分隔

下面是实现把数组按指定的个数分隔的完整攻略:

下面是实现把数组按指定的个数分隔的完整攻略:

步骤一:确定和准备数据

首先需要确定需要分隔的数组,以及指定的个数。假设数组为 $arr,指定的个数为 $num

步骤二:计算分隔后的数组长度

在开始分隔前,需要计算出分隔后的数组长度,即 $count,根据数组长度和指定分隔个数计算得到:

$count = ceil(count($arr) / $num);

count($arr) 返回数组 $arr 的长度,ceil() 函数向上取整。

步骤三:分隔数组

在计算出数组分隔长度后,可以通过 for 循环将原数组逐个分隔成新的小数组,放入一个大数组 $newArr 中:

$newArr = array();
for ($i = 0; $i < $count; $i++) {
    $newArr[] = array_slice($arr, $i * $num, $num);
}

在循环中,array_slice 函数 利用 $i$num 计算出当前需要分割的部分在原数组中的位置,然后返回包含指定分割部分的新数组。

当循环结束后,大数组 $newArr 就是我们需要的分割后的数组。

示例一

假设现在有一个数组,

$arr = array('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j');

需要将其按照每个小数组包含 3 个元素进行分隔,代码实现如下:

$arr = array('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j');
$num = 3;
$count = ceil(count($arr) / $num);
$newArr = array();
for ($i = 0; $i < $count; $i++) {
    $newArr[] = array_slice($arr, $i * $num, $num);
}

var_dump($newArr);

代码输出结果:

array(4) {
  [0]=>
  array(3) {
    [0]=>
    string(1) "a"
    [1]=>
    string(1) "b"
    [2]=>
    string(1) "c"
  }
  [1]=>
  array(3) {
    [0]=>
    string(1) "d"
    [1]=>
    string(1) "e"
    [2]=>
    string(1) "f"
  }
  [2]=>
  array(3) {
    [0]=>
    string(1) "g"
    [1]=>
    string(1) "h"
    [2]=>
    string(1) "i"
  }
  [3]=>
  array(1) {
    [0]=>
    string(1) "j"
  }
}

输出结果显示,原数组 ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j'],被成功地切分成了包含 3 个元素的小数组。

示例二

假设现在有一个数组,

$arr = array(1, 2, 3, 4, 5, 6, 7, 8, 9);

需要将其按照每个小数组包含 4 个元素进行分隔,代码实现如下:

$arr = array(1, 2, 3, 4, 5, 6, 7, 8, 9);
$num = 4;
$count = ceil(count($arr) / $num);
$newArr = array();
for ($i = 0; $i < $count; $i++) {
    $newArr[] = array_slice($arr, $i * $num, $num);
}

var_dump($newArr);

代码输出结果:

array(3) {
  [0]=>
  array(4) {
    [0]=>
    int(1)
    [1]=>
    int(2)
    [2]=>
    int(3)
    [3]=>
    int(4)
  }
  [1]=>
  array(4) {
    [0]=>
    int(5)
    [1]=>
    int(6)
    [2]=>
    int(7)
    [3]=>
    int(8)
  }
  [2]=>
  array(1) {
    [0]=>
    int(9)
  }
}

输出结果显示,原数组 [1, 2, 3, 4, 5, 6, 7, 8, 9],被成功地切分成了包含 4 个元素的小数组。

以上就是用 PHP 实现将数组按指定个数分隔的完整攻略,希望能对你有所帮助。

本文标题为:php实现把数组按指定的个数分隔

基础教程推荐