PHP array_chunk(): Split Arrays into Manageable Parts

When working with big arrays in PHP, things can get messy. That is where php array_chunk() steps in by providing a way to get those big arrays broken down into small, manageable pieces, from organizing data that is to be displayed to splitting content into rows or handling large datasets cleanly and efficiently using array_chunk().

In this article, you will learn what the PHP function array_chunk() does and how to use it, along with practical examples, and why it’s a convenient tool in the hands of any PHP developer.

What is php array_chunk()?

In other words, the array_chunk() in PHP is a function that takes one array and breaks it into smaller arrays or, in other words, chunks: take a whole long list of items and divide it into portions that are easier to handle or manage.

Be it displaying products across rows, creating groups, or processing large sets of data, array_chunk() will do what is required.

Syntax of PHP array_chunk()

Accordingly, the syntax is relatively simple; there are only a couple of main options:

array_chunk(array $array, int $size, bool $preserve_keys = false): array
  • $array: This is the source array that you would want to split up.
  • $size: Size that the chunks should contain.
  • $preserve_keys (optional): Whether to preserve the original keys of the array. If TRUE, PHP will keep the keys intact.

The next section explains how array_chunk() works with a simple example.

Basic Example of php array_chunk()

Suppose you have an array of students and you want to divide them into groups of three. Here is how array_chunk() does just that for you in PHP:

$students = ["Alice", "Bob", "Charlie", "Dave", "Eve", "Frank"];
$groups = array_chunk($students, 3);

print_r($groups);

Here is the output:

Array
(
    [0] => Array ( [0] => Alice [1] => Bob [2] => Charlie )
    [1] => Array ( [0] => Dave [1] => Eve [2] => Frank )
)

Above, array_chunk() divided our $students array into two smaller arrays of three each. It’s a clean and clear-cut way to handle grouping without any excess loops or conditions.

Now, in the next section, we will see how the preserve_keys parameter works and when you might need it.

Using preserve_keys with the array_chunk()

By default, array_chunk() will reset the keys to begin at 0 for each chunk. But what if you needed to retain the original keys, say you are dealing with associative arrays? Well, that’s where preserve_keys comes in. Here it is in action:

$student_scores = ["Alice" => 95, "Bob" => 87, "Charlie" => 92, "Dave" => 88];
$groups = array_chunk($student_scores, 2, true);

print_r($groups);

Here is the output:

Array
(
    [0] => Array ( [Alice] => 95 [Bob] => 87 )
    [1] => Array ( [Charlie] => 92 [Dave] => 88 )
)

This will work, but setting preserve_keys to true, the original names are kept as keys for readability and ease of use. If preserve_keys was not set, this function would reset the keys in each chunk.

Wrapping Up

This array_chunk() function in PHP is powerful yet simple in terms of splitting an array into parts. Ideally, it’s great for creating manageable chunks in items being displayed in rows, handling large datasets, and batch grouping of data.

Once you get accustomed to the syntax, optional parameters, and use, you’ll commit it smoothly to your PHP projects. Just keep in mind how chunk size and key preservation affect the handling of your data, and you will squeeze the most from array_chunk().

Similar Reads

Install PHP on Operating System: Ubuntu, Windows, and macOS

In this tutorial, you will learn how to install PHP on your Operating system such as Ubuntu, Windows, or macOS.…

How to Update MySQL Data with PHP?

Understanding how to update data in PHP and MySQL is like editing a draft—it is all about tweaking the right…

PHP array_intersect Function: How it Works with Examples

The PHP array_intersect function finds common values in arrays and returns matches as a new array. Understand the array_intersect in…

PHP Spread Operator: Understand How (…) Syntax Works

Before the spread operator, PHP developers had to pass array items to a function using extra steps. They often had…

PHP array_diff_assoc: How to Compare Arrays with Keys

Array values may look the same, but keys can differ. The array_diff_assoc in PHP finds differences by both values and…

PHP Assignment Operators: A Complete Guide

The assignment operators are the sets of gears that keep your code well-oiled and running when deep in PHP, allowing…

PHP is_dir Function: Check if a Directory Exists

Sometimes, when you run a script, you may encounter an error because the directory you're trying to access doesn't exist.…

PHP implode Function: Join Array Values into a String

The implode function in PHP appeared to solve a common need—joining array elements into a single string. It helps format…

PHP For Loop: Run Code Using a Counter with Examples

You may need to repeat tasks in PHP. The PHP for loop solves this by letting you run code many…

PHP Associative Array: Optimal Data Organization

The PHP associative array is a structured collection wherein data elements are organized into lists or groups. Each element is…

Previous Article

PHP array_pop: Remove and Return the Last Element of an Array

Next Article

PHP $GLOBALS: Access Global Variables with Examples

Write a Comment

Leave a Comment

Your email address will not be published. Required fields are marked *


Subscribe to Get Updates

Get the latest updates on Coding, Database, and Algorithms straight to your inbox.
No spam. Unsubscribe anytime.