sablier

Convertir une date MySQL en timestamp unix

Comment transformer une date MySQL en timestamp grâce à la fonction UNIX_TIMESTAMP

mysql timestamp, timestamp mysql, timestamp, date to timestamp mysql, mysql date to timestamp, mysql convertir date timestamp, convertir date timestamp mysql, mysql transformer date timestamp, timestamp unix, convert mysql timestamp, timestamp php, mysql conversion date timestamp, mysql convertir timestamp en date, mysql convertir date en timestamp, convertir timestamp mysql

La fonction UNIX_TIMESTAMP de MySQL permet de convertir une date MySQL en timestamp. Cette fonction est utile lorsque, comme moi, vous stockez vos dates sous le format MySQL en base de données et que vous avez des traitements php sur les dates.

Le format date de MySQL

Le format date de mysql est une chaine de caractères de la forme :


"1983-07-30 09:10:57" Correspond à la date du 30 Juillet 1983 à 09H10 et 57 secondes

Qu'est ce qu'un timestamp unix

Un timestamp unix est un entier qui correspond au nombre de seconde écoulées depuis le 1 janvier 1970 à minuit heure UTC, date approximative de la naissance du système d'exploitation unix.


428397057 Correspond nombre de secondes écoulées entre le 1er janvier 1970 minuit et le 30 Juillet 1983 à 09H10 et 57 secondes

Pourquoi stocker des dates au format MySQL

C'est un choix personnel qui n'engage que moi, mais je préfère stocker mes dates au format MySQL tout simplement à cause des différents formats de timestamp (Unix, MySQL, 32 bits, 64 bits ...). Avec le format MySQL mes dates sont intemporelles et ne sont pas affectées par les changements de norme des timestamps.

Pourquoi travailler sur des timestamps

Si j'utilise le timestamp dans mes traitements php c'est parce que celui ci est très commode pour faire des calculs et des comparaisons entre date. Pour ajouter une heure à une date facile :


<?php
$madate = 428397057;
$madate += 3600;
?>

Et hop ma date correspond maintenant au 30 Juillet 1983 à 10H10 et 57 secondes, on ne peut pas faire plus simple.

Transformer un date MySQL en timestamp unix

Pour convertir la date MySQL en timestamp unix il faut utiliser la fonction UNIX_TIMESTAMP comme cela :


SELECT UNIX_TIMESTAMP( '1983-07-30 09:10:57' )

Retourne le timestamp unix :


428397057

Image : openDemocracy

 
 

b1n@sp1n