php 时间函数strtotime 使用详解

2018-12-08 11:44:26
这篇文章介绍的内容是关于php 时间函数strtotime 使用详解 ,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下


定义和用法 strtotime() 
strtotime() 函数将任何英文文本的日期时间描述解析为 Unix 时间戳。

语法 
strtotime(time,now)

参数描述
time规定要解析的时间字符串。
now用来计算返回值的时间戳。如果省略该参数,则使用当前时间。
  • 说明 
    该函数预期接受一个包含美国英语日期格式的字符串并尝试将其解析为 Unix 时间戳(自 January 1 1970 00:00:00 GMT 起的秒数),其值相对于 now 参数给出的时间,如果没有提供此参数,则用系统当前时间。 
    该函数将使用 TZ 环境变量(如果有的话)来计算时间戳。自 PHP 5.1.0 起有更容易的方法来定义时区用于所有的日期/时间函数。此过程在 date_default_timezone_get() 函数页面中有说明。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

// #1

echo strtotime("now");  // 获取当前时间戳

echo date('Y-m-d H:i:s', strtotime("now"));

// #2

echo strtotime("2015-06-11 10:11:00");  // 获取指定的时间戳

echo date('Y-m-d H:i:s', strtotime("2015-06-11 10:11:00"));

// #3

echo strtotime("3 October 2005");   // 获取指定的时间戳[等同于strtotime("2005-10-03")]

echo date('Y-m-d H:i:s', strtotime("3 October 2005"));

// #4

echo strtotime("+5 hours"); // 当前时间加五个小时 [对比#1]

echo date('Y-m-d H:i:s', strtotime("+5 hours"));

// #5

echo strtotime("+1 day");   // 当前时间加1天 [对比#1]

echo date('Y-m-d H:i:s', strtotime("+1 day"));

// #6

echo strtotime("+2 days");  // 当前时间加多天 名词变复数 [对比#1]

echo date('Y-m-d H:i:s', strtotime("+2 days"));

// #7

echo strtotime("+1 week 3 days 7 hours 5 seconds"); // 当前时间加 1周 3天 7小时 5秒 [对比#1]

echo date('Y-m-d H:i:s', strtotime("+1 week 3 days 7 hours 5 seconds"));

// #8

echo strtotime("next Monday");  // 当前时间下一个周一

echo date('Y-m-d H:i:s', strtotime("next Monday"));

// #9

echo strtotime("last Sunday");  // 当前时间前一个周日

echo date('Y-m-d H:i:s', strtotime("last Sunday"));

// #10

echo strtotime("-1 day",strtotime("2018-07-01 10:11:00"));  // 给定时间 减去一天

echo date('Y-m-d H:i:s', strtotime("-1 day",strtotime("2018-07-01 10:11:00")));


时间名词: 
年year 复数years 
月month 复数months 
周week 复数weeks 
日day 复数days 
时hour 复数hours 
分second 复数seconds 
秒minute 复数minutes 
上一个last 
下一个next 
一月January 
二月February 
三月March 
四月April 
五月May 
六月June 
七月July 
八月August 
九月September 
十月October 
十一月November 
十二月December

相关推荐:

php 使用strtotime获取上个月、下个月、本月的日期代码实例

php中strtotime函数详解


  • 2020-11-22 20:56:13

    Dagger2使用详解

    简单的说,就是一个工厂模式,由Dagger负责创建工厂,帮忙生产instance。遵从Java规范JSR 330,可以使用这些注解。现在不研究Dagger2是如何根据注解去生成工厂的,先来看看工厂是什么东西,理解为什么可以实现了DI(Dependency Injection),如何创建IoC(Inverse of Control)容器。

  • 2020-11-22 21:00:28

    dagger.android--Fragment,BaseFragment

    1 使用Fragment参数来代替Activity参数 2 使用 @FragmentKey来代替@ActivityKey 3 使用HasFragmentInjector来代替@HasActivityInjector 4 AndroidInjection.inject(Fragment)方法,在Fragment的onAttach()中调用,而不是在onCreate()中 5 Fragment的Module添加位置,和Activity是不同的,它取决于Fragment需要的其他依赖注入

  • 2020-11-22 21:12:30

    Dependency Injection with Dagger2,Fragment

    標註@Provides的method若有parameter的話,Dagger會找出其擁有的該型態物件來使用。我們在Module內新增了DataModel將其列入Dagger的管理下,接著在provideFactory()增加parameter變成provideFactory(DataModel dataModel),Dagger就會找出其管理的DataModel給provideFactory使用。

  • 2020-11-22 22:58:52

    Android LiveData Transformations

    有时候有这样的需求,需要在LiveData将变化的数据通知给观察者前,改变数据的类型;或者是返回一个不一样的LiveData。

  • 2020-11-22 23:00:16

    androidx中的lifecycle组件

    Lifecycle-aware components生命周期感知组件执行操作,以响应另一个组件生命周期状态的更改,例如Activity和Fragment。这些组件可以帮助您生成更有组织、更容易维护的轻量级代码。

  • 2020-11-22 23:02:50

    Android数据存储之DataBase的Room

    Room是Google在AndroidX中提供的一个ORM(Object Relational Mapping,对象关系映射)库。它是在SQLite上提供的一个抽象层,可以使用SQLite的全部功能,同时可以更好更便捷流畅地访问数据库。(关于AndroidX可以参考

  • 2020-11-22 23:04:39

    Android组件 LiveData与MutableLiveData教程

    LiveData与ViewMode是经常搭配在一起使用的,但是为了不太混乱,我还是拆分开来说明,此篇博客只讲解 LiveData 与 MutableLiveData的概念与使用方式(但是会涉及到ViewMode的部分代码).

  • 2020-11-22 23:14:52

    Dagger 2 在 Android 上的用法

    在前面的文章我们介绍了Dagger2 中的大部分注解的使用,接下来我们从源码角度分析下第一篇文章中例子的原理。