PHP获取当前毫秒时间戳
最近在做一个智能家居项目的后台,需要实时上传用户对智能设备的配置信息到服务器,以便实现同步,因此对于时间的精确度要求比较高,最开始直接是用php的time()函数来获取时间戳,获取的时间精确到秒级别,如果客户端同时操作的话还是有可能产生冲突,因此建议将时间戳精度提高到毫秒级别,但是在php没有自带的函数能获取毫秒时间戳,但提供了一个microtime()函数,如果调用时不带可选参数,本函数以 "msec sec" 的格式返回一个字符串,其中 sec 是自 Unix 纪元(0:00:00 January 1, 1970 GMT)起到现在的秒数,msec 是微秒部分。字符串的两部分都是以秒为单位返回的。
microtime()函数的详细说明,可以到w3chool上面看看《PHP microtime() 函数》。
<?php echo microtime(); //输出结果是 //0.25139300 1138197510
注意了,它的结果是分两部分的,也就是前半部分是毫秒(但是单位是秒),后半部分是秒。
现在,我们依据这个做下修改,如下:
<?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);return $msectime; }
注意:sprintf('%.0f', $num) 是输出不含小数部分的浮点数
事情还没有结束,我把时间戳改成毫秒级别后,再次更新数据库数据时,却提示超出范围,原来之前我在数据库中是用int型来存储time()函数获取的秒级别的时间戳,存储范围是够的,改成毫秒级别的,就得改成BIGINT类型了。
整数类型 字节 范围(有符号) 范围(无符号) 用途
TINYINT 1字节 (-128,127) (0,255) 小整数值
SMALLINT 2字节 (-32 768,32 767) (0,65 535) 大整数值
MEDIUMINT 3字节 (-8 388 608,8 388 607) (0,16 777 215) 大整数值
INT或INTEGER 4字节 (-2 147 483 648,2 147 483 647) (0,4 294 967 295) 大整数值
BIGINT 8字节 (-9 233 372 036 854 775 808,9 223 372 036 854 775 807) (0,18 446 744 073 709 551 615) 极大整数值
PHP获取当前毫秒时间戳相关推荐
- JavaScript 获取当前毫秒时间戳
function getTime(){ //第一种方法 1498627266000 var timestamp1 =Date.parse(new D ...
- 【python 时间戳】python获取13位时间戳以及时间戳转换
无意中发现了一个巨牛的人工智能教程,忍不住分享一下给大家.教程不仅是零基础,通俗易懂,而且非常风趣幽默,像看小说一样!觉得太牛了,所以分享给大家.点这里可以跳转到教程.人工智能教程 java默认精度是 ...
- PHP获取毫秒时间戳,利用microtime()函数
PHP获取毫秒时间戳,利用microtime()函数 php本身没有提供返回毫秒数的函数,但提供了一个microtime()函数,借助此函数,可以很容易定义一个返回毫秒数的函数. php的毫秒是没有默 ...
- php获取时间到微妙,php 获取毫秒时间戳
在开发的过程中,请求接口时,经常以时间戳作为双方约定好的参数.那此时一定要再追问一句,是10位时间戳还是13位时间戳,即为毫秒时间戳. 在工程中,搜索底层函数,获得了php语言下对于毫秒时间戳的两种主 ...
- Windows两种获取毫秒时间戳的方法
windows平台获取毫秒时间戳的两种方法 通过 ftime 获取毫秒时间戳 #include <sys/timeb.h>uint64_t TimeMilliSecond() {timeb ...
- PHP实现获取毫秒时间戳的方法
PHP获取毫秒时间戳,利用microtime()函数 php本身没有提供返回毫秒数的函数,但提供了一个microtime()函数,借助此函数,可以很容易定义一个返回毫秒数的函数. php的毫秒是没有默 ...
- php time 毫秒_PHP microtime()函数获取毫秒时间戳
PHP获取毫秒时间戳,利用microtime()函数 php本身没有提供返回毫秒数的函数,但提供了一个microtime()函数,借助此函数,可以很容易定义一个返回毫秒数的函数. php的毫秒是没有默 ...
- php 获取毫秒函数,PHP实现获取毫秒时间戳的方法【使用microtime()函数】
本文实例讲述了PHP实现获取毫秒时间戳的方法.分享给大家供大家参考,具体如下: PHP获取毫秒时间戳,利用microtime()函数 php本身没有提供返回毫秒数的函数,但提供了一个microtime ...
- 获取当前时间的毫秒时间戳
list($msec, $sec) = explode(' ', microtime()); # 0.85447400 1543975789 $msectime = (float)sprint ...
最新文章
- 探讨.NET Core中实现AES加密和解密以及.NET Core为我们提供了什么方便!
- C#----DataGridView控件60招(一) [转]
- 【VS开发】【DSP开发】WinDriver简介(或介绍)
- Android 沙箱开源,Android Sandbox(沙箱)开源工具介绍
- c++ map 析构函数_C++|类继承关系中的虚函数、虚析构函数、虚基类
- 自动秒收录导航php源码
- 网络专业人士笔记(超级珍藏)
- 自动化创建tornado项目
- 【java笔记】of方法 JDK9对集合添加方法的优化
- ScreenToClient和ClientToScreen
- CodeBlocks注释和替换快捷键
- CSPs-2020 游记
- 【附源码】计算机毕业设计java原创网络文学管理系统设计与实现
- java 热力图,热力图
- 【Gradle】Gradle运行main方法报错:Unnecessarily replacing a task that does not exist is not supported.
- Linux服务器docker中装oracle 11g
- 队列BlockingQueue
- Laravel 5.5 Artisan 命令
- 病毒、蠕虫和木马的区别
- java创建user类在哪里_java中创建对象有哪几种方式
热门文章
- 面试:a==1 a==2 a==3 是 true 还是 false?
- 初五迎财神!即使没有年终奖,也要来一发红包!
- 别再叫我 Sql boy!
- 万字超强图文讲解 AQS 以及 ReentrantLock 应用
- 2020 最新 JVM 生态报告
- android popupwindow 自定义背景,Android PopupWindow背景半透明兼容方案
- java 字符串编程题,JAVA 基础编程练习题7 【程序 7 处理字符串】
- Opencv C++ 归一化
- PyTorch基于Apex的混合精度加速
- 人脸关键点 HRNet-Facial-Landmark-Detection