3v4l.org

run code in 300+ PHP versions simultaneously
<?php function addDecalage($ts, $inverse = false) { $decalage = '3.0'; if ($decalage != 0) { if (!$inverse) $decalage = -$decalage; $ts_heureEte = strtotime("01 April " . date("Y", $ts)); $ts_heureEte_debut = strtotime("last sunday", $ts_heureEte); $ts_heureHiver = strtotime("01 November " . date("Y", $ts)); $ts_heureEte_fin = strtotime("last sunday", $ts_heureHiver); if ($ts > $ts_heureEte_debut && $ts < $ts_heureEte_fin) { if (!$inverse) $decalage = $decalage + 1; else $decalage = $decalage - 1; } $demiHeure = ""; if (preg_match("`[1-9]{1,2}\.0`", $decalage)) $decalage = substr($decalage, 0, strpos($decalage, ".")); if (preg_match("`[1-9]{1,2}\.5`", $decalage)) { $decalage = substr($decalage, 0, strpos($decalage, ".")); $demiHeure = " 30 minutes"; } if ($decalage > 0) $decalage = " +$decalage hours $demiHeure"; else $decalage = " $decalage hours $demiHeure"; return $new_ts = strtotime(date("Y-m-d H:i:s", $ts) . $decalage); } else return $ts; }$ts =1417086000;var_dump(date("Y-m-d H:i:s", addDecalage($ts)))?>
Output for 4.3.6 - 4.3.11, 4.4.0 - 4.4.9, 5.0.0 - 5.0.5, 5.1.0 - 5.1.6, 5.2.0 - 5.2.17, 5.3.0 - 5.3.29, 5.4.0 - 5.4.45, 5.5.0 - 5.5.38, 5.6.0 - 5.6.40, 7.0.0 - 7.0.33, 7.1.0 - 7.1.33, 7.2.0 - 7.2.33, 7.3.0 - 7.3.31, 7.4.0 - 7.4.33, 8.0.0 - 8.0.12, 8.0.14 - 8.0.30, 8.1.0 - 8.1.28, 8.2.0 - 8.2.18, 8.3.0 - 8.3.6
string(19) "2014-11-27 09:00:00"
Output for 7.3.32 - 7.3.33, 8.0.13
string(19) "2014-11-27 08:00:00"
Output for 4.3.0 - 4.3.5
string(19) "2014-11-27 17:00:00"

preferences:
284.48 ms | 401 KiB | 459 Q