3v4l.org

run code in 300+ PHP versions simultaneously
<?php $arr = array ( 0 => array ( 'datum_od' => '10.01.2020', 'datum_do' => '20.01.2020', 'abroad' ), 1 => array ( 'datum_od' => '10.02.2020', 'datum_do' => '20.02.2020', 'abroad'), 2 => array ( 'datum_od' => '10.03.2020', 'datum_do' => '20.03.2020', 'abroad'), 3 => array ( 'datum_od' => '10.04.2020', 'datum_do' => '20.04.2020', 'abroad')); $end_date = 0; if(date('d', strtotime($arr[0]['datum_od'])) != '01'){ $end_date = date('d.m.Y', strtotime($arr[0]['datum_od'] . ' -1 day')); $new[] = array('datum_od' => date('01.m.Y', strtotime($arr[0]['datum_od'])), 'datum_do' => $end_date, 'home'); } foreach($arr as $key => $item){ if(date("d.m.Y", strtotime($end_date . " +1 day")) != date('d.m.Y', strtotime($item['datum_od']))){ $end_date = date('d.m.Y', strtotime($item['datum_od'] . ' -1 day')); $new[] = array('datum_od' => date('d.m.Y', strtotime($arr[$key-1]['datum_do'] . " +1 day")), 'datum_do' => $end_date, 'home'); $new[] = $item; }else{ $new[] = $item; } // if(count($new) == 3) var_dump($end_date+1); } var_dump($new);
Output for 7.2.0 - 7.2.34, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.28, 8.2.0 - 8.2.18, 8.3.0 - 8.3.4, 8.3.6
array(8) { [0]=> array(3) { ["datum_od"]=> string(10) "01.01.2020" ["datum_do"]=> string(10) "09.01.2020" [0]=> string(4) "home" } [1]=> array(3) { ["datum_od"]=> string(10) "10.01.2020" ["datum_do"]=> string(10) "20.01.2020" [0]=> string(6) "abroad" } [2]=> array(3) { ["datum_od"]=> string(10) "21.01.2020" ["datum_do"]=> string(10) "09.02.2020" [0]=> string(4) "home" } [3]=> array(3) { ["datum_od"]=> string(10) "10.02.2020" ["datum_do"]=> string(10) "20.02.2020" [0]=> string(6) "abroad" } [4]=> array(3) { ["datum_od"]=> string(10) "21.02.2020" ["datum_do"]=> string(10) "09.03.2020" [0]=> string(4) "home" } [5]=> array(3) { ["datum_od"]=> string(10) "10.03.2020" ["datum_do"]=> string(10) "20.03.2020" [0]=> string(6) "abroad" } [6]=> array(3) { ["datum_od"]=> string(10) "21.03.2020" ["datum_do"]=> string(10) "09.04.2020" [0]=> string(4) "home" } [7]=> array(3) { ["datum_od"]=> string(10) "10.04.2020" ["datum_do"]=> string(10) "20.04.2020" [0]=> string(6) "abroad" } }
Output for 8.3.5
Warning: PHP Startup: Unable to load dynamic library 'sodium.so' (tried: /usr/lib/php/8.3.5/modules/sodium.so (libsodium.so.23: cannot open shared object file: No such file or directory), /usr/lib/php/8.3.5/modules/sodium.so.so (/usr/lib/php/8.3.5/modules/sodium.so.so: cannot open shared object file: No such file or directory)) in Unknown on line 0 array(8) { [0]=> array(3) { ["datum_od"]=> string(10) "01.01.2020" ["datum_do"]=> string(10) "09.01.2020" [0]=> string(4) "home" } [1]=> array(3) { ["datum_od"]=> string(10) "10.01.2020" ["datum_do"]=> string(10) "20.01.2020" [0]=> string(6) "abroad" } [2]=> array(3) { ["datum_od"]=> string(10) "21.01.2020" ["datum_do"]=> string(10) "09.02.2020" [0]=> string(4) "home" } [3]=> array(3) { ["datum_od"]=> string(10) "10.02.2020" ["datum_do"]=> string(10) "20.02.2020" [0]=> string(6) "abroad" } [4]=> array(3) { ["datum_od"]=> string(10) "21.02.2020" ["datum_do"]=> string(10) "09.03.2020" [0]=> string(4) "home" } [5]=> array(3) { ["datum_od"]=> string(10) "10.03.2020" ["datum_do"]=> string(10) "20.03.2020" [0]=> string(6) "abroad" } [6]=> array(3) { ["datum_od"]=> string(10) "21.03.2020" ["datum_do"]=> string(10) "09.04.2020" [0]=> string(4) "home" } [7]=> array(3) { ["datum_od"]=> string(10) "10.04.2020" ["datum_do"]=> string(10) "20.04.2020" [0]=> string(6) "abroad" } }

preferences:
159.4 ms | 405 KiB | 191 Q