时间戳
时间戳是指格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的总秒数。
时区
由于世界各国家与地区经度不同,地方时也有所不同,因此会划分为不同的时区。正式的时区划分,每隔经度15°划分一个时区,共包括24个时区。
我们目前使用的北京时间并不是北京(东经116.4°)的地方时间,而是东经120°(东八区)的地方时间。因为北京处于国际时区划分中的东八区,同格林威治时间(世界时)整整相差8小时(即北京时间=世界时+8小时)。
时间戳与时区的关系
二者没有关系,时间戳在哪个时区都是一样的,时间戳不会随着时区的变化而变化。但是我们可以根据时间戳计算不同时区的当前时间。
PHP关于时间戳,时间的使用
1、获取时间戳
time(); // 1554533452
2、date() ,格式化一个本地时间/日期
使用date()获取的时间和时区有关。
如以下例子中获取的是北京时间:
date(\'Y-m-d H:i:s\', time()); // 2019-04-06 14:43:27
3、gmdate(),格式化一个 GMT/UTC 日期/时间
和date()一样的用法,只是返回的时间和时区无关,返回的时间是格林威治标准时(GMT)。
gmdate(\'Y-m-d H:i:s\', time()); // 2019-04-06 06:46:39