PHP में array_chunk() फ़ंक्शन एक सरणी को छोटे-छोटे टुकड़ों (chunks) में विभाजित करता है। एक बहुआयामी सरणी लौटाता है जहाँ प्रत्येक उप-सरणी का आकार chunk_size होता है (अंतिम छोटा हो सकता है)।
सिंटैक्स (Syntax)
array_chunk(array $arr, int $length, bool $preserve_keys = false): array
पैरामीटर्स (Parameters)
$arr − विभाजित की जाने वाली सरणी।
$length − प्रत्येक चंक का आकार (धनात्मक पूर्णांक)।
$preserve_keys (वैकल्पिक) −
true= मूल कुंजियाँ संरक्षित,false= 0 से रीइंडेक्स (डिफ़ॉल्ट)।
रिटर्न वैल्यू (Return Value)
बहुआयामी सरणी (चंक्स की सरणी) लौटाता है।
उदाहरण (Examples)
उदाहरण 1: मूल उपयोग (कुंजियाँ संरक्षित)
<?php
$products = array("Electronics" => "99", "Accessories" => "110", "Clothing" => "150", "Furniture" => "198");
$result = array_chunk($products, 2, true);
print_r($result);
?>
आउटपुट
Array
(
[0] => Array
(
[Electronics] => 99
[Accessories] => 110
)
[1] => Array
(
[Clothing] => 150
[Furniture] => 198
)
)
उदाहरण 2: कुंजियाँ रीइंडेक्स (preserve_keys = false)
<?php $arr = ['a', 'b', 'c', 'd', 'e']; print_r(array_chunk($arr, 2, false)); ?>
आउटपुट
Array
(
[0] => Array ( [0] => a [1] => b )
[1] => Array ( [0] => c [1] => d )
[2] => Array ( [0] => e )
)
उदाहरण 3: व्यावहारिक उपयोग - पेजिनेशन / बैच प्रोसेसिंग
<?php
$items = range(1, 100);
$pageSize = 10;
$pages = array_chunk($items, $pageSize);
foreach ($pages as $pageNum => $pageItems) {
echo "Page " . ($pageNum + 1) . ": " . implode(", ", $pageItems) . "\n";
}
?>
उदाहरण 4: HTML तालिका में पंक्तियाँ बनाना
<?php $data = ['A', 'B', 'C', 'D', 'E', 'F', 'G']; $rows = array_chunk($data, 3); echo "
| $cell | "; } echo "
नोट
- $length ≤ 0 पर ValueError (PHP 8.0+) / Warning और null लौटाता है।
- संख्यात्मक कुंजियाँ हमेशा प्रत्येक चंक में 0 से शुरू होती हैं (preserve_keys केवल स्ट्रिंग कुंजियों पर लागू)।