PHP 时间 date,strtotime ,time计算1970开始的第几天
首先,需要看你的php时区配置参数
方式1:更改php配置文件,然后从其fast-cgi或者php调用的地方;
方式2:date_default_timezone_set('PRC');
date函数用于日期函数的获取,这里需要注意的,date得到的我们可以理解为概念时间,跟地区有关系。如北京时间和伦敦时间同一个时刻对应不同的时间有8小时的时差,北京时间早8小时。
time和strtotime得到的是物理时间,不存在和地区的联系,全球统一。
在项目有需要计算1970开始的第几天,这里就出现了问题。用时间秒去算的时候。
北京时间2016-01-14 4:00:00和2016-01-13 13:00:00得到同一个时间。
所以用strtotime转换到时间戳是内部有减去地区时间差的操作。
// 1970年1月1日至今的天数, 生成courseVideoGUID用, 截取16位
$currentTimeStamp = time();
p($currentTimeStamp);
$currentTimeStamp = ($currentTimeStamp - ($currentTimeStamp % 86400)) / 86400;
$currentTimeStamp = ($currentTimeStamp & 0xFFFF);
p($currentTimeStamp);
// 1970年1月1日至今的天数, 生成courseVideoGUID用, 截取16位
$currentTimeStamp = strtotime(date('Y-m-d H:i:s'));
p($currentTimeStamp);
$currentTimeStamp = ($currentTimeStamp - ($currentTimeStamp % 86400)) / 86400;
$currentTimeStamp = ($currentTimeStamp & 0xFFFF);
p($currentTimeStamp);
// 1970年1月1日至今的天数, 生成courseVideoGUID用, 截取16位
$currentTimeStamp = strtotime('2016-04-14 07:00:00');
p($currentTimeStamp);
$currentTimeStamp = ($currentTimeStamp - ($currentTimeStamp % 86400)) / 86400;
$currentTimeStamp = ($currentTimeStamp & 0xFFFF);
p($currentTimeStamp);
PHP 时间 date,strtotime ,time计算1970开始的第几天的更多相关文章
- js时间Date对象介绍及解决getTime转换为8点的问题
前言 在做时间转换的时候,发现用“2016-04-12”转出来的时间戳是 2016-04-12 08:00的时间点,而不是0点. new Date('2016-04-12').getTime(); ) ...
- 修改Linux系统日期与时间date clock
先设置日期 date -s 20080103 再设置时间 date -s 18:24:30 为了永久生效,需要将修改的时间写入CMOS. 查看CMOS的时间: #clock -r 将当前系统时间写到C ...
- linux修改系统时间date命令加clock -w
http://m.jb51.net/LINUXjishu/117784.html 修改linux系统时间的方法(date命令) 11-18 23:22:27作者:脚本之家 命令格式为: date -s ...
- jsp页面根据当前时间和定义时间差计算动态倒计时
jsp页面根据当前时间和定义时间差计算动态倒计时http://www.jb51.net/article/74140.htm var maxtime =1000*60; //半个小时,按秒计算,自 ...
- js常用数据类型(Number,String,undefined,boolean) 引用类型( function,object,null ),其他数据类型( 数组Array,时间Date,正则RegExp ),数组与对象的使用
js常用数据类型 数字类型 | 字符串类型 | 未定义类型 | 布尔类型 typeof()函数查看变量类型 数字类型 Number var a1 = 10; var a2 = 3.66; conso ...
- Linux下查看设设置时间date命令
查看时间 # date "+%Y_%m_%d %H-%M-%S" 设置时间 #date -s "2018-05-17 09:51:50" //写入到硬件时钟 ...
- 00007 - Linux时间date命令详解
1.命令:date 2.命令功能:date 可以用来显示或设定系统的日期与时间. 3.命令参数 -d<字符串>:显示字符串所指的日期与时间.字符串前后必须加上双引号: -s<字符串& ...
- Java 日期时间 Date类型,long类型,String类型表现形式的转换
Java 日期时间 Date类型,long类型,String类型表现形式的转换 1.java.util.Date类型转换成long类型 java.util.Date dt = new Date(); ...
- springmvc时间(date)无法转入后台(@DateTimeFormat+@JsonFormat(GMT+8))
spring时间(date)无法转入后台 Type Status Report Description The server cannot or will not process the reques ...
随机推荐
- DNS消息格式
一,简介 空谈误国,要让一大堆抽象的DNS概念落地,还是需要了解DNS消息格式的,本文会尽量详细地介绍DNS消息格式的每一个字段. 也可以移步rfc1035了解. 二,概览 DNS消息主要由五部分组成 ...
- Quartz.NET
http://www.360doc.com/userhome.aspx?userid=11741424&cid=2#
- 简单的bat命令去获取wsdl的源码
@echo off cd C:\Program Files\Java\jdk1..0_45\bin for /R "D:\wqcCode\company\emtproj\02 Require ...
- SQL优化大全
1. 优化SQL步骤 1. 通过 show status和应用特点了解各种 SQL的执行频率 通过 SHOW STATUS 可以提供服务器状态信息,也可以使用 mysqladmin extende d ...
- 【android Studio】零git知识、零脚本命令,即刻体验git版本管理魅力!
git的优点就不去多说了.阻碍咱新手体验它的唯一问题就是门槛太高,脚本看着像天书, 本文主要阐述的,就是如何在android studio上,也能像tfs那样,非常简单的操作,就能使用git进行版本管 ...
- mysql 允许远程登陆
参考:http://blog.chinaunix.net/uid-23215128-id-2951624.html 1.以root账户登录 2.grant all PRIVILEGES on disc ...
- SSI-Server Side Inclued
SSI是指将内容发送到浏览器之前,可以使用“服务器端包含 (SSI)”指令将文本.图形或应用程序信息包含到网页中. IIS.Apache等主流web服务器都支持,cassini不支持.它并不经过asp ...
- Linux 打通ssh无密码登录
像hadoop和spark这类的集群,因为master节点要控制slave节点,以及各节点之间要交互信息,所以需要各节点之间能够互相无密码登录. 通过RSA保存密码, 基本操作如下: Step 1: ...
- Android ListView实现不同item的方法和原理分析
ListView实现不同item的方法和原理分析 一问题抛出Listview是android里面的重要组件,用来显示一个竖向列表,这个没有什么问题:但是有个时候列表里面的item不是一样的,如下图,列 ...
- IntelliJ IDEA使用(1)——IDEA配置JDK
提前安装jdk,配置环境变量 一.配置jdk 1.依次点开File -->Project Structure,点击左侧标签页,点击SDKs 2.点击+号,选SDK 3.在弹出框选择jdk路径(我 ...