日期和时间

日期和时间信息在 PHP 内部是以 64 位数字存储的, 它可以覆盖当前时间前后 2920 亿年的时间。

它提供了一些很好用的函数获取运行 PHP 的服务器的日期和时间, 也可以把 日期和时间 格式化成不同格式的字符串。

设置时区

注意:PHP中的时间函数都是严重依赖区域设置的,并不完全和操作系统的时区设置保持一致,所以必须主动设置好时区才能准确地使用时间。
date_default_timezone_set('Asia/Shanghai');


范例

Example #1

[运行代码]

// PHP运行时间非常重要, 要设置时区
date_default_timezone_set('Asia/Shanghai');
echo date('Y-m-d H:i:s'), "\n";
echo date('t'), "\n";
echo strtotime("2016-11-02 last day of - 1 month"), "\n";

[执行结果]

2018-07-02 09:55:11
31
1477843200

Example #2 连续的日期

时间是不连续的,但是时间戳是连续的,可以使用时间戳来生成连续的日期

[运行代码]

$start = strtotime("2019-01-26 00:00:00");

for ($i = 0; $i < 10; $i++) {
    $date = date("Y-m-d", $start + 86400 * $i);
    echo $date, "\n";
}

[执行结果]

2019-01-26
2019-01-27
2019-01-28
2019-01-29
2019-01-30
2019-01-31
2019-02-01
2019-02-02
2019-02-03
2019-02-04

相关函数

参考链接

  1. date 格式化字段 http://php.net/manual/zh/function.date.php

参见

安装配置 安装 php.ini php-fpm.conf
基础 简介 历史 基本语法 函数
数据类型 string number boolean object array
面向对象 class abstract interface trait
文件操作 file excel csv word pdf json xml yaml
应用 mysql memcache sqlite nosql postgresql mongodb redis kafka etcd sphinx solr elasticsearch

rsyslog queue log gd imagick ffmpeg

扩展 extension curl pdo swoole
PHP框架 yaf yii laravel cakephp zend thinkphp