PHP n'a pas sa propre fonction pour obtenir des horodatages en millisecondes, mais il fournit une fonction microtime() Si elle est appelée sans paramètres facultatifs, cette fonction renvoie une chaîne au format "msec sec où sec". le nombre de secondes depuis l'époque Unix (0:00:00 le 1er janvier 1970 GMT) et msec est la partie microseconde. Les deux parties de la chaîne sont renvoyées en secondes.
<?php echo microtime(); //输出结果是 //0.25139300 1138197510
Notez que le résultat est divisé en deux parties, c'est-à-dire que la première moitié est en millisecondes (mais l'unité est la seconde) et la seconde moitié est la seconde.
Maintenant, nous apportons des modifications sur cette base, comme suit :
<?php list($msec, $sec) = explode(' ', microtime()); $msectime = (float)sprintf('%.0f', (floatval($msec) + floatval($sec)) * 1000); 这样就可以了,$msectime就是当前的毫秒数!可以将这两行封装成一个函数方便使用。 <?php //返回当前的毫秒时间戳 function msectime() { list($msec, $sec) = explode(' ', microtime()); $msectime = (float)sprintf('%.0f', (floatval($msec) + floatval($sec)) * 1000); }
Remarque : sprintf('%.0f', $num) génère un nombre à virgule flottante sans partie décimale
Le problème n'est pas encore terminé. Après avoir modifié l'horodatage au niveau de la milliseconde, lorsque j'ai à nouveau mis à jour les données de la base de données, cela a provoqué une erreur hors de portée. Il s'avère que j'ai utilisé le type int dans la base de données. pour stocker le deuxième niveau obtenu par la fonction time(). La plage de stockage de l'horodatage est suffisante. S'il est modifié au niveau de la milliseconde, il doit être modifié en type BIGINT.
Type entier Octets Plage (signée) Plage (non signée) Utilisation
TINYINT 1 octet (-128, 127) (0, 255) >SMALLINT 2 octets (-32 768 , 32 767) (0, 65 535) Grande valeur entière
MEDIUMINT 3 octets (-8 388 608, 8 388 607) (0, 16 777 215) Grande valeur entière
INT ou INTEGER 4 octets ( -2 147 483 648, 2 147 483 647) (0, 4 294 967 295) Grande valeur entière
BIGINT 8 octets (-9 233 372 036 854 775 808, 9 223 372 036 854 775 8 07) ( 0, 18 446 744 073 709 551 615) Valeur entière extrêmement grande
Recommandations associées :
implémentation de php Comment obtenir l'horodatage actuel en millisecondesExplication détaillée de la fonction PHP d'obtention de l'horodatage actuelphp calcule la différence de temps entre deux horodatages Deux méthodesCe 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!