Avec le développement d'Internet, l'application du langage php est de plus en plus répandue. Lors de l'écriture de programmes PHP, le traitement du temps implique souvent une conversion d'horodatage. Cet article explique comment convertir des horodatages de niveau milliseconde au format de date et d'heure normal.
1. Qu'est-ce qu'un horodatage ?
Un horodatage fait référence au nombre total de secondes depuis 0:00:00 le 1er janvier 1970, heure moyenne de Greenwich, jusqu'à aujourd'hui. Sous Unix, Linux, PHP et autres environnements, les calculs d'horodatage sont généralement exprimés sous la forme UTC (Universal Cooperative Time).
En php, nous pouvons obtenir l'horodatage actuel en appelant la fonction time() :
echo time(); // 输出当前时间戳,类似于1600685641
2. Horodatage au niveau de la milliseconde
Parfois, nous avons besoin d'obtenir une heure plus précise, alors nous devons utiliser un horodatage de niveau en millisecondes. Les horodatages au niveau de la milliseconde sont calculés essentiellement de la même manière que les horodatages ordinaires, mais avec une plus grande précision. Vous pouvez utiliser la fonction microtime() pour obtenir l'horodatage actuel au niveau de la milliseconde.
list($t1,$t2) = explode(' ',microtime()); echo $t2.ceil($t1*1000); // 输出类似于1609241937227
3. Convertir les horodatages au niveau de la milliseconde au format de date et d'heure
En php, nous pouvons utiliser la fonction date() pour convertir les horodatages au format de date et d'heure. Cependant, la fonction date() ne peut gérer que les horodatages ordinaires et ne peut pas gérer directement les horodatages au niveau de la milliseconde. Afin de convertir l'horodatage au niveau de la milliseconde au format de date et d'heure, nous devons d'abord convertir l'horodatage au niveau de la milliseconde en un horodatage ordinaire.
Supposons que nous ayons obtenu un horodatage au niveau de la milliseconde : 1609241937227, nous pouvons suivre les étapes ci-dessous pour le convertir au format de date et d'heure :
Étant donné que la fonction date() ne peut pas gérer les millisecondes pour horodatage au niveau de la milliseconde, nous devons convertir l'horodatage au niveau de la milliseconde en un horodatage au deuxième niveau. Vous pouvez utiliser le code suivant pour convertir les horodatages de niveau milliseconde en horodatages de deuxième niveau :
$timestamp = 1609241937227; //假设该值为获取到的毫秒级别时间戳 $timestamp = floor($timestamp/1000); //将毫秒级别时间戳转换为秒级别时间戳
Après les étapes ci-dessus, nous avons converti les horodatages de niveau milliseconde convertis en un horodatage en secondes. Ensuite, nous pouvons utiliser la fonction date() pour convertir l'horodatage de deuxième niveau au format de date et d'heure dont nous avons besoin.
$timestamp = 1609241937; //假设该值为获取到的毫秒级别时间戳 $date_time = date('Y-m-d H:i:s',$timestamp); //将秒级别时间戳转换为日期时间格式 echo $date_time; // 输出类似于2020-12-29 10:45:37
4. Code complet
Le code complet pour convertir les horodatages de niveau milliseconde au format date et heure est le suivant :
function timestamp_to_date($timestamp) { $timestamp = floor($timestamp/1000); return date('Y-m-d H:i:s',$timestamp); } // 示例 $timestamp = 1609241937227; $date_time = timestamp_to_date($timestamp); echo $date_time; // 输出类似于2020-12-29 10:45:37
Résumé
En PHP, le traitement des horodatages est une opération très courante. Cet article explique comment convertir des horodatages de niveau milliseconde au format date-heure. L'horodatage de niveau milliseconde doit être converti en horodatage de deuxième niveau, puis la fonction date() est utilisée pour le convertir au format de date et d'heure. De plus, les lecteurs peuvent également apporter les modifications correspondantes en fonction de leurs propres besoins.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!