<?php

$data = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15, 16];
$chunkLength = 3;
$result = [];

while(count($data)) {
	$result[] = array_splice($data, 0, $chunkLength);
	$chunkLength = $chunkLength === 3 ? 2 : 3;
}

print_r($result);