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, convertir date mysql timestamp, date to timestamp, timestamp unix, mysql convertir date en timestamp, convertir timestamp mysql, conversion timestamp en date mysql, mysql datetime to timestamp, datetime mysql to timestamp, transformer date en timestamp, sql date timestamp, sql convertir timestamp en date, timestamp to date mysql, sql timestamp to date

Date de publication : 2009-03-20 10:29:16

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