Convertir format date de Excel en format date ( YYYY-MM-DD)
Résolu/Fermé
ksomda
Messages postés
35
Date d'inscription
lundi 17 février 2014
Statut
Membre
Dernière intervention
2 septembre 2016
-
30 août 2016 à 12:49
ksomda Messages postés 35 Date d'inscription lundi 17 février 2014 Statut Membre Dernière intervention 2 septembre 2016 - 2 sept. 2016 à 16:04
ksomda Messages postés 35 Date d'inscription lundi 17 février 2014 Statut Membre Dernière intervention 2 septembre 2016 - 2 sept. 2016 à 16:04
Bonjour tout le monde,
je viens vers vous parce que j'ai un soucis. Mon soucis est le suivant: j'importes un fichier excel contenant des champs de dates. l'importation marche. Je lies dans ce fichier excel importé à l'aide du plugin PHPExcel. Toutefois, les champs des dates sont toutes lues en php comme des nombres à titre d'exemple 15 Juillet 2016 écrit dans Excel devient 42566 lors de la récupération des données dans mon code php. J'ai essayé les méthodes de " date ", mktime, DateTime::createFromFormat() mais la date me renvoie soit 01 Janvier 1970 soit des messages d'erreurs. S'il vous plait pouvez m'aider.
je viens vers vous parce que j'ai un soucis. Mon soucis est le suivant: j'importes un fichier excel contenant des champs de dates. l'importation marche. Je lies dans ce fichier excel importé à l'aide du plugin PHPExcel. Toutefois, les champs des dates sont toutes lues en php comme des nombres à titre d'exemple 15 Juillet 2016 écrit dans Excel devient 42566 lors de la récupération des données dans mon code php. J'ai essayé les méthodes de " date ", mktime, DateTime::createFromFormat() mais la date me renvoie soit 01 Janvier 1970 soit des messages d'erreurs. S'il vous plait pouvez m'aider.
A voir également:
- Phpexcel format date
- Format epub - Guide
- Telecharger format factory - Télécharger - Conversion & Codecs
- Format dat - Guide
- Format apfs - Guide
- Hp usb disk storage format tool - Télécharger - Stockage
3 réponses
Utilisateur anonyme
30 août 2016 à 18:39
30 août 2016 à 18:39
Les dates sont sous quels formats dans le fichier Excel, car là je vois pas à quoi correspond une date de type Excel. Ensuite le fichier à quel extension? Car la PHP peut parser du CSV directement.
Thorak83
Messages postés
1051
Date d'inscription
jeudi 20 juin 2013
Statut
Membre
Dernière intervention
22 décembre 2017
156
2 sept. 2016 à 15:08
2 sept. 2016 à 15:08
Bonjour,
Le chiffre 42566 représente l'écart du nombre de jours entre le 01/01/1900 et le 15/07/2016(qui est le point de départ des dates dans Excel).
Le chiffre 42566 représente l'écart du nombre de jours entre le 01/01/1900 et le 15/07/2016(qui est le point de départ des dates dans Excel).
Thorak83
Messages postés
1051
Date d'inscription
jeudi 20 juin 2013
Statut
Membre
Dernière intervention
22 décembre 2017
156
2 sept. 2016 à 15:34
2 sept. 2016 à 15:34
Voici
ex: $dateExcel = 42566
Le timestamp de excel est le nombre de jours écoulé depuis le 01/01/1900.
Le timestamp de PHP est le nombre de jours écoulé depuis le le 01/01/1970
Il faut donc retiré le nombre de jours écoulé entre le 01/01/1900 et le 01/01/1970 (25569) au timestamp excel, puis le multiplié par 24*60*60 pour avoir cette valeur en secondes.
$datephp= date('d/m/Y', ($dateExcel - 25569)*24*60*60 );
ex: $dateExcel = 42566
Le timestamp de excel est le nombre de jours écoulé depuis le 01/01/1900.
Le timestamp de PHP est le nombre de jours écoulé depuis le le 01/01/1970
Il faut donc retiré le nombre de jours écoulé entre le 01/01/1900 et le 01/01/1970 (25569) au timestamp excel, puis le multiplié par 24*60*60 pour avoir cette valeur en secondes.
ksomda
Messages postés
35
Date d'inscription
lundi 17 février 2014
Statut
Membre
Dernière intervention
2 septembre 2016
2 sept. 2016 à 16:04
2 sept. 2016 à 16:04
d'accord merci pour ton apport Thorak83
2 sept. 2016 à 14:51
Vu que j'utilise PHPExcel pour lire, c'est ce que j'ai trouvé avec un développeur