Code前端首页关于Code前端联系我们

php5time的简单介绍

terry 3年前 (2023-09-30) 阅读数 55 #PHP
文章标签 str_replace函数

本文目录一览:

  • 1、php中time和mktime用法的区别分析
  • 2、php5中date得出的时间为什么不是当前时间的解决方法
  • 3、怎样设置PHP的timezone
  • 4、如何重新定义time()函数 PHP

php中time和mktime用法的区别分析

在php编程中,时间函数time(),返回当前时间的。而mktime()函数,不是返回当前时间,而是格式化时间。

虽然单独写mktime()而不加任何参数如:echo mktime()和echo time()的效果是一样的。但本质上是不一样的。

PHP mktime() 函数

PHP Date / Time 函数

定义和用法

mktime() 函数返回一个日期的 Unix 时间戳。

参数总是表示 GMT 日期,因此 is_dst 对结果没有影响。

参数可以从右到左依次空着,空着的参数会被设为相应的当前 GMT 值。

语法

mktime(hour,minute,second,month,day,year,is_dst)

参数 描述

hour 可选。规定小时。

minute 可选。规定分钟。

second 可选。规定秒。

month 可选。规定用数字表示的月。

day 可选。规定天。

year 可选。规定年。在某些系统上,合法值介于 1901 - 2038 之间。不过在 PHP 5 中已经不存在这个限制了。

is_dst 

可选。如果时间在日光节约时间(DST)期间,则设置为1,否则设置为0,若未知,则设置为-1。

自 5.1.0 起,is_dst 参数被废弃。因此应该使用新的时区处理特性。

提示和注释

注释:在 PHP 5.1 之前,如果该函数的参数非法,则会返回 false。

例子:

mktime() 函数对于日期运算和验证非常有用。它可以自动校正越界的输入:

?php

echo(date("M-d-Y",mktime(0,0,0,12,36,2001)));

echo(date("M-d-Y",mktime(0,0,0,14,1,2001)));

echo(date("M-d-Y",mktime(0,0,0,1,1,2001)));

echo(date("M-d-Y",mktime(0,0,0,1,1,99)));

?

输出:

Jan-05-2002

Feb-01-2002

Jan-01-2001

Jan-01-1999

PHP time() 函数

PHP Date / Time 函数

定义和用法

time() 函数返回当前时间的 Unix 时间戳。

语法

time(void)

参数 描述

void 可选。

说明

返回自从 Unix 纪元(格林威治时间 1970 年 1 月 1 日 00:00:00)到当前时间的秒数。

提示和注释

提示:自 PHP 5.1 起在 $_SERVER['REQUEST_TIME'] 中保存了发起该请求时刻的时间戳。

例1,

?php

//time()函数示例1

$t=time();

echo($t . "br /");

echo(date("D F d Y",$t));

?

输出:

1138618081

Mon January 30 2006

例2,

?php

//time()函数示例2

$nextWeek = time() + (7 * 24 * 60 * 60); // 7 days; 24 hours; 60 mins; 60secs

echo 'Now:       '. date('Y-m-d') ."\n";

echo 'Next Week: '. date('Y-m-d', $nextWeek) ."\n";

?

输出:

Now:       2005-03-30

Next Week: 2005-04-07

php5中date得出的时间为什么不是当前时间的解决方法

时区不对吧,你可以设置一下默认时区,或者像下面那么弄:

?php

function gmtime()

{

    return (time() - date('Z'));

}

var_dump(date('Y-m-d H:i:s', gmtime()));

?

怎样设置PHP的timezone

修改php.ini,在php.ini中找到data.timezone =去掉它前面的;号,然后设置data.timezone = “Asia/Shanghai”;

在程序PHP 5以上版本的程序代码中使用函数ini_set('date.timezone','Asia/Shanghai');或者date_default_timezone_set(‘Asia/Shanghai');

如何重新定义time()函数 PHP

做个全局设置就可以了 因为在php5以及起以上的版本,默认情况下的时间会与本地时间出现时差,时间函数的输出结果总是相差8个小时,8个小时,很熟悉的时差,猜测应该是时区设置的原因。通过观察phpinfo()函数的输出结果,发现有一个参数date.timezone默认设置为UTC,是格林威治时间8 U x9 G; V/ T5 i, ^。打开php.ini发现没有date.timezone的选项,估计是采用默认值,PHP手册中有完整的时区列表。对于东八区,可用的有Asia/Chongqing、 Asia/Chungking、Asia/Hongkong、Asia/Shanghai、Asia/Taipei、PRC、Etc/GMT+8等(呵呵 不知道为什么没有beijing),任选一个就可以了。

方法1、在代码中增加如下命令:

?php

date_default_timezone_set('PRC');//其他东八去时间表示均可

?

方法2、配置php.ini文件,设置如下:

date.timezone=PRC; //中国:PRC如果没有此项在任意位置添加即可,添加后别忘记重启APACHE服务器

版权声明

本文仅代表作者观点,不代表Code前端网立场。
本文系作者Code前端网发表,如需转载,请注明页面地址。

热门