J'ai une erreur très étrange que je ne comprends pas. Pour une raison quelconque, certaines dates ne sont pas correctement analysées.Erreur de date d'analyse
Le code:
$day = strtotime($_GET['d']."-".$_GET['m']."-".$_GET['y']);
$dateTimeZone = new DateTimeZone("Europe/Prague");
$dateTime = new DateTime($day, $dateTimeZone);
$offset = ($dateTimeZone->getOffset($dateTime))/3600;
Maintenant, la chose est vraiment bizarre .... si je passe dans certains numéros, cela fonctionne, mais il ne marche pas avec les autres ...
Par exemple, un URL comme ceci fonctionnerait:
d=15&m=12&y=2014
Mais ceci:
d=12&m=12&y=2014
montre
Fatal error: Uncaught exception 'Exception' with message 'DateTime::__construct(): Failed to parse time string (1418252400) at position 7 (4): Unexpected character' in
J'ai essayé d'expérimenter avec elle, changeant aussi le format du strtotime, mais pas de chance et il semble juste complètement travailler ....
Pourquoi envoyez-vous la date dans les paramètres séparés? –
Vous n'avez pas besoin d'utiliser strtotime, vous pouvez passer la chaîne de date directement dans l'objet 'DateTime'. L'erreur est probablement due à un ordre incorrect du jour, du mois et de l'année. Il devrait être AAAA-MM-JJ. –
Que montre 'var_dump ($ day)' quand cela arrive? – Barmar