首页 > 编程知识 正文

php获取时间戳的微秒数(php 时间戳是几位数)

时间:2023-12-03 11:56:28 阅读:311730 作者:UFOK

本文目录一览:

  • 1、php怎么将指定期时间转为时间戳(时间戳精确到毫秒)?
  • 2、php microtime获取浮点的时间戳
  • 3、PHP怎么获取时间戳的毫秒值
  • 4、php里的时间戳是以秒为单位吗?

php怎么将指定期时间转为时间戳(时间戳精确到毫秒)?

php并没有直接支持毫秒的日期时间函数,所以要想得到毫秒级的时间戳,就要把秒级的时间戳*1000。

需要注意的是,由于毫秒级的时间戳已经远远超过整数的大小范围,所以要用浮点数(且精度不能低于13位)来储存。

另外,要想把毫秒级的时间戳转为时间,务必先/1000再转换,否则错误,因为php并不认识所谓的毫秒级时间戳!

不过,虽然无法获得指定时间的毫秒级时间戳,但要想获得当前时间的毫秒数,却是有办法的:

echo microtime(true)*1000;

php microtime获取浮点的时间戳

一直以来用这个函数获取:

复制代码

代码如下:

function

microtime_float(){

list($usec,

$sec)

=

explode("

",

microtime());

return

((float)$usec

+

(float)$sec);

}

看到别人的源码中用microtime(true),查了下手册,原来从PHP

5.0.0

开始,microtime增加了这个参数。

引用

复制代码

代码如下:

mixed

microtime

(

[bool

get_as_float]

)

microtime()

当前

Unix

时间戳以及微秒数。本函数仅在支持

gettimeofday()

系统调用的操作系统下可用。

如果调用时不带可选参数,本函数以

"msec

sec"

的格式返回一个字符串,其中

sec

是自

Unix

纪元(0:00:00

January

1,

1970

GMT)起到现在的秒数,msec

是微秒部分。字符串的两部分都是以秒为单位返回的。

如果给出了

get_as_float

参数并且其值等价于

TRUE,microtime()

将返回一个浮点数。

注意:

get_as_float

参数是

PHP

5.0.0

新加的。

如果程序肯定在PHP5以上的环境运行,那么就直接使用microtime(true)吧,比使用microtime_float函数至少快两倍。以下是我简单测试的程序代码。

复制代码

代码如下:

?php

function

microtime_float3(){

return

microtime(true);

}

function

microtime_float2(){

if(

PHP_VERSION

5){

return

microtime(true);

}else{

list($usec,

$sec)

=

explode("

",

microtime());

return

((float)$usec

+

(float)$sec);

}

}

function

microtime_float(){

list($usec,

$sec)

=

explode("

",

microtime());

return

((float)$usec

+

(float)$sec);

}

function

runtime($t1){

return

number_format((microtime_float()

-

$t1)*1000,

4).'ms';

}

$t1

=

microtime_float();

for($i=0;$i10000;$i++){

microtime_float();

}

echo

"microtime_float=====";

echo

runtime($t1).'br';

$t1

=

microtime(true);

for($i=0;$i10000;$i++){

microtime(true);

}

echo

"microtime_true=====";

echo

runtime($t1).'br';

$t1

=

microtime(true);

for($i=0;$i10000;$i++){

microtime_float2();

}

echo

"microtime_float2=====";

echo

runtime($t1).'br';

$t1

=

microtime(true);

for($i=0;$i10000;$i++){

microtime_float3();

}

echo

"microtime_float3=====";

echo

runtime($t1).'br';

?

本机winxp运行结果:

microtime_float=====109.5631ms

microtime_true=====38.8160ms

microtime_float2=====52.7902ms

microtime_float3=====45.0699ms

Linux上运行结果:

microtime_float=====47.2510ms

microtime_true=====9.2051ms

microtime_float2=====16.3319ms

microtime_float3=====12.2800ms

在PHP5的环境下,直接使用microtime(true);显然是最快的。microtime_float2和microtime_float3都可以在不改变原有程序的情况下,直接修改函数内容来实现性能的轻微提升。microtime_float2可以做为兼容旧版本的写法。

PHP怎么获取时间戳的毫秒值

用Date的getTime方法来获取

public static void main(String[] args) {

// TODO Auto-generated method stub

Date dt= new Date();

Long time= dt.getTime();//这就是距离1970年1月1日0点0分0秒的毫秒数

System.out.println(System.currentTimeMillis());//与上面的相同

}

php里的时间戳是以秒为单位吗?

是的。

相关点:

1、time()函数返回的是当前时间的Unix时间戳格式,即1970年1月1日0:00:00到当前的秒数。

2、如果你需要得到当前时间的微秒数 可以使用microtime(true)。

关于php:

1、PHP,是英文超文本预处理语言Hypertext Preprocessor的缩写。

2、PHP 是一种 HTML 内嵌式的语言,是一种在服务器端执行的嵌入HTML文档的脚本语言,语言的风格有类似于C语言,被广泛地运用。

PHP的特性:

1、PHP独特的语法混合了 C、Java、Perl 以及 PHP [8]自创新的语法;

2、PHP安装它可以比 CGI或者Perl更快速的执行动态网页。用PHP做出的动态页面与其他的编程语言相比;

3、PHP是将程序嵌入到HTML文档中去执行,执行效率比完全生成htmL标记的CGI要高许多;

4、PHP具有非常强大的功能,所有的CGI的功能PHP都能实现,而且支持几乎所有流行的数据库以及操作系统。最重要的是PHP可以用C、C++进行程序的扩展。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。