PHP Date() 函数

date(format,timestamp)
参数 描述
format 必需。规定时间戳的格式。
timestamp 可选。规定时间戳。默认是当前时间和日期。

注释:时间戳是一种字符序列,它表示具体事件发生的日期和事件。

获得简单的日期

date() 函数的格式参数是必需的,它们规定如何格式化日期或时间。

下面列出了一些常用于日期的字符:

  d - 表示月里的某天(01-31)

  m - 表示月(01-12)

  Y - 表示年(四位数)

  1 - 表示周里的某天

其他字符,比如 "/", "." 或 "-" 也可被插入字符中,以增加其他格式。

下面的例子用三种不同方法格式今天的日期:

<?php
echo "今天是 " . date("Y/m/d") . "<br>";
echo "今天是 " . date("Y.m.d") . "<br>";
echo "今天是 " . date("Y-m-d") . "<br>";
echo "今天是 " . date("l");
?>

PHP 提示 - 自动版权年份

使用 date() 函数在您的网站上自动更新版本年份:

© 2010-<?php echo date("Y")?>

获得简单的时间

下面是常用于时间的字符:

h - 带有首位零的 12 小时小时格式

i - 带有首位零的分钟

s - 带有首位零的秒(00 -59)

a - 小写的午前和午后(am 或 pm)

下面的例子以指定的格式输出当前时间:

<?php
echo "现在时间是 " . date("h:i:sa");
?>

注释:请注意 PHP date() 函数会返回服务器的当前日期/时间!

获得时区

如果从代码返回的不是正确的时间,有可能是因为您的服务器位于其他国家或者被设置为不同时区。

因此,如果您需要基于具体位置的准确时间,您可以设置要用的时区。

下面的例子把时区设置为 "Asia/Shanghai",然后以指定格式输出当前时间:

<?php
date_default_timezone_set("Asia/Shanghai");
echo "当前时间是 " . date("h:i:sa");
?>

通过 PHP mktime() 创建日期

date() 函数中可选的时间戳参数规定时间戳。如果您未规定时间戳,将使用当前日期和时间(正如上例中那样)。

mktime() 函数返回日期的 Unix 时间戳。Unix 时间戳包含 Unix 纪元(1970 年 1 月 1 日 00:00:00 GMT)与指定时间之间的秒数。

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

下面的例子使用 mktime() 函数中的一系列参数来创建日期和时间:

实例

<?php
$d=mktime(9, 12, 31, 6, 10, 2015);
echo "创建日期是 " . date("Y-m-d h:i:sa", $d);
?>

通过 PHP strtotime() 用字符串来创建日期

PHP strtotime() 函数用于把人类可读的字符串转换为 Unix 时间。

strtotime(time,now)

下面的例子通过 strtotime() 函数创建日期和时间:

<?php
$d=strtotime("10:38pm April 15 2015");
echo "创建日期是 " . date("Y-m-d h:i:sa", $d);
?>

PHP 在将字符串转换为日期这方面非常聪明,所以您能够使用各种值:


<?php
$d=strtotime("tomorrow");
echo date("Y-m-d h:i:sa", $d) . "<br>"; $d=strtotime("next Saturday");
echo date("Y-m-d h:i:sa", $d) . "<br>"; $d=strtotime("+3 Months");
echo date("Y-m-d h:i:sa", $d) . "<br>";
?>

不过,strtotime() 并不完美,所以请记得检查放入其中的字符串。

更多日期实例

下例输出下周六的日期:

<?php
$startdate = strtotime("Saturday");
$enddate = strtotime("+6 weeks",$startdate); while ($startdate < $enddate) {
echo date("M d", $startdate),"<br>";
$startdate = strtotime("+1 week", $startdate);
}
?>

下例输出七月四日之前的天数:

<?php
$d1=strtotime("December 31");
$d2=ceil(($d1-time())/60/60/24);
echo "距离十二月三十一日还有:" . $d2 ." 天。";
?>

php基础(五)日期的更多相关文章

  1. day 69 Django基础五之django模型层(一)单表操作

    Django基础五之django模型层(一)单表操作   本节目录 一 ORM简介 二 单表操作 三 章节作业 四 xxx 一 ORM简介 MVC或者MVC框架中包括一个重要的部分,就是ORM,它实现 ...

  2. day 55 Django基础五之django模型层(一)单表操作

      Django基础五之django模型层(一)单表操作   本节目录 一 ORM简介 二 单表操作 三 章节作业 四 xxx 一 ORM简介 MVC或者MVC框架中包括一个重要的部分,就是ORM,它 ...

  3. Bootstrap <基础五>表格

    Bootstrap 提供了一个清晰的创建表格的布局.下表列出了 Bootstrap 支持的一些表格元素: 标签 描述 <table> 为表格添加基础样式. <thead> 表格 ...

  4. C#_02.14_基础五_.NET类

    C#_02.14_基础五_.NET类 一.类实例: 我们前面说过类是一个模板,我们通过类创建一个又一个的实例,通常情况下类当中的变量是每一个实例都各有一份的,互相不影响,而静态字段是除外的,静态字段是 ...

  5. day 70 Django基础五之django模型层(二)多表操作

    Django基础五之django模型层(二)多表操作   本节目录 一 创建模型 二 添加表记录 三 基于对象的跨表查询 四 基于双下划线的跨表查询 五 聚合查询.分组查询.F查询和Q查询 六 ORM ...

  6. day 57 Django基础五之django模型层之关联管理器

    Django基础五之django模型层之关联管理器   class RelatedManager "关联管理器"是在一对多或者多对多的关联上下文中使用的管理器.它存在于下面两种情况 ...

  7. day 56 Django基础五之django模型层(二)多表操作

    Django基础五之django模型层(二)多表操作   本节目录 一 创建模型 二 添加表记录 三 基于对象的跨表查询 四 基于双下划线的跨表查询 五 聚合查询.分组查询.F查询和Q查询 六 ORM ...

  8. Django基础五之Ajax

    Django基础五之Ajax 目录 Django基础五之Ajax 1. Ajax介绍 2. Ajax前后端传值 2.1 方法一HttpResponse直接返回 2.2 方法二使用Json格式返回 2. ...

  9. 05.Django基础五之django模型层(一)单表操作

    一 ORM简介 MVC或者MVC框架中包括一个重要的部分,就是ORM,它实现了数据模型与数据库的解耦,即数据模型的设计不需要依赖于特定的数据库,通过简单的配置就可以轻松更换数据库,这极大的减轻了开发人 ...

随机推荐

  1. 在转换为 UTC 时大于 DateTime.MaxValue 或小于 DateTime.MinValue 的 DateTime 值无法系列化为 JSON

    看到这个错往往会感到莫名其妙! 其原因其实是数据库的DateTime最小值和C#的DateTime不一样 Sql Server DateTime 类型必须介于 1/1/1753 12:00:00 AM ...

  2. Python2 基于urllib2 的HTTP请求类

    一个利用urllib2模块编写的下载器,虽然有了requests模块,但是毕竟标准库 import urllib2,random class strong_down(): def __init__(s ...

  3. qdoc 简介

    Qdoc 介绍 Qdoc是开发者用于在软件工程中生成文档的一个工具.它从工程的源文件中提取qdoc类型注释,并以html页面或者DITA XML文档的形式格式化到文件中.Qdoc在.cpp和.qdoc ...

  4. robotium测试

    作者:贺锐链接:https://www.zhihu.com/question/28466134/answer/40921012来源:知乎著作权归作者所有,转载请联系作者获得授权. 直接用自己的手机上就 ...

  5. 一个简单的例子说明windows环境变量配置

    关于win下环境变量的问题 配置环境变量其实就像是创建一个快捷键一样,我们把安装程序的路径告诉系统环境变量,这样下次我们在命令行中就可以直接使用一个简单的命令来调用我们安装的程序,因为此时计算机已经知 ...

  6. mysql 时间

    显示当前时间: mysql> select now(); +---------------------+ | now() | +---------------------+ | -- :: | ...

  7. Abstract和Virtual

    在C#的学习中,容易混淆virtual方法和abstract方法的使用,现在来讨论一下二者的区别. 它们有一个共同点:二者都是用来修饰父类的,只能作为基类使用,通过覆盖父类的定义,让子类与overri ...

  8. MAC OS 快捷键一览

    OS X 键盘快捷键 键盘快捷键是通过按下键盘上的组合键来调用 OS X 功能的一种方式.了解有关常见 OS X 键盘快捷键的信息. 若要使用键盘快捷键,您可以同时按修饰键和字符键.例如,按下 Com ...

  9. JDK7 LinkedList源代码分析

    transient int size = 0; /** * Pointer to first node. * Invariant: (first == null && last == ...

  10. springmvc配置aop

    直接看代码 springmvc中的配置aop对 controller和它的子包进行拦截 springmvc中的配置 <!--xml头部配置需要有这几行代码--> xmlns:aop=&qu ...