<?php $data = array( '2013-07-19' => 1, '2013-07-21' => 3, '2013-07-23' => 2, '2013-07-24' => 4, '2013-07-25' => 4, '2013-07-26' => 2, '2013-07-27' => 2, '2013-07-30' => 3, '2013-07-31' => 1 ); $result = array(); $ref = new DateTime('1821-11-11'); // or starting with PHP 7.3: $ref = new DateTime(array_key_first($data)); foreach ($data as $datum => $nb) { //if ($ref->add($oneDay)->format('Y-m-d') !== $datum) { if ($ref->modify('+1 day')->format('Y-m-d') !== $datum) { $result[] = array(); $ref->setDate(...explode('-', $datum));// = new DateTime($datum); } $result[count($result) - 1][$datum] = $nb; } print_r($result);
You have javascript disabled. You will not be able to edit any code.