PHP的日期和时间--php基础最详细教程

原创 2016年08月30日 22:04:59

PHP的日期和时间 原创



介绍UNIX时间戳


简介:以最小从0开始,最大到2的32次方减一的整数表示格林威治标准时间如112304325
这个UNIX时间戳整数是从1970年1月1日0时0分0秒开始(计算机元年)到现在的秒数。
作用:方便我们计算使用(参与运算)
时间范围 1970-01-01 0:0:0 到2038-01-19 11:14:07     时间戳范围1-2147483647  int 


在PHP中获取日期和时间


1. int time ( void )  time() 当前时间戳
2.array getdate ([ int $timestamp = time() ] ) 默认返回当前时间日期格式化的数组。 如果传参,就传时间戳类型的参数。
   [secondes] =>41                秒
   [minutes] => 33         分钟
   [hours] => 7                  小时   
   [mday] => 12               一个月中的第几天
   [wday] =>  5                一个星期的第几天
   [mon] => 11                数字型月份
   [year] => 2010           年份 
   [yday] => 315            一年中的第几天
  [weekday] => Friday    英文星期几
  [month] => November   英文月份
  [0] => 1289547221      时间戳
3.strtotime()  功能与mktime()相似返回时间戳
int strtotime ( string $time [, int $now = time() ] ) 定义:将任何英文文本的日期时间描述解析为 Unix 时间戳
<?php
echo strtotime("now"), "\n";
echo strtotime("10 September 2000"), "\n";
echo strtotime("+1 day"), "\n";
echo strtotime("+1 week"), "\n";
echo strtotime("+1 week 2 days 4 hours 2 seconds"), "\n";
echo strtotime("next Thursday"), "\n";
echo strtotime("last Monday"), "\n";
?> 


       时间日期格式化输出
(把时间戳转换成日期时间)


string date ( string $format [, int $timestamp ] )
date('Y-m-d H:i:s'); 默认转化当前时间戳
date('Y-m-d H:i:s',1285947221); 转换给定第二参数的时间戳
说明:format参数比较多,可以根据需要使用不同参数。


把日期和时间转成时间戳格式


int mktime(时,分,秒,月,日,年); 
说明:有自动校正功能
mktime(0,0,0,12,36,2007); 2008-01-05 0:0:0 的时间戳
mktime(0,0,0,12,30,99); 1999-12-30 0:0:0 的时间戳


通过用户输入的生日信息,转换为时间戳来算用户生日:
<?php
date_default_timezone_set('PRC');


$bir = '1987-02-24';
list($year,$month,$day) = explode('-',$bir);


$age = floor((time() - mktime(0,0,0,2,24,1987))/(60*60*24*365));


echo $age;


修改PHP的默认时区


第一种方式:修改php.ini文件来修改默认时区。
      date.timezone = Etc/GMT+8
说明:尽量不要改配置文件,通过函数设置,然后include到每个文件中是最好的选择。


第二种方式:通过函数来修改时区时间,只对使用此函数的页面生效。
date_default_timezone_set('PRC');  首选此方式
date_default_timezone_set('Etc/GMT-8'); 
date_default_timezone_set('Asia/Shanghai');
建议:服务器每半小时同步一次。


使用微秒计算PHP脚本执行的时间


微秒时间函数:mixed microtime ([ bool $get_as_float ] ) 
   不填写参数时,会返回微秒数 和 时间戳
    填写true时,只会返回微秒数。


实例:
<?php
date_default_timezone_set('PRC');


class Timer {
private $startTime;
private $stopTime;


function _construct(){
$this->startTime = 0;
$this->stopTime = 0;
}
function start(){
$this->startTime = microtime(true);
echo $this->startTime;
}
function stop(){
$this->stopTime = microtime(true);
echo $this->stopTime;
}
function spent(){
return round(($this->stopTime)-($this->startTime),4);
}



$timer = new Timer;
$timer->start();
echo '<br>';
for($i = 0 ;$i < 10000;$i++){


}
$timer->stop();
echo '<br>';
echo $timer->spent();
echo '<br>';




日历示例


版权声明:本文为博主原创文章,未经博主允许不得转载。

php基础知识 8,数学函数库和日期时间函数库

数学函数库:      floor函数:将实现舍一取整   ceil函数:将实现进一取整   pow函数:幂指数预算     例:echo pow(2,3)  --> 8   sqrt函数:...

php基础系列----5日期时间的处理

日期时间的处理在程序中对日期时间的处理很常见;看下php中如何对日期时间进行处理;设置php配置文件的日期时间要想在php中能够正确处理日期时间,第一件事就是php.ini这个配置文件中的日期设置要正...
  • TYZDXY
  • TYZDXY
  • 2016年11月29日 15:32
  • 138

php基础知识 5.流程控制 和格式化日期时间 和终止程序执行

流程控制:主要有俩种 ,一种分支语句,一种循环语句 max(123,22,343434):找出最大值 min(123,22,343483888):找出最小值 分支语句 :1,if()        ...

php基础之日期时间函数(4)

php基础之日期时间函数获取时间戳 时间戳是指1970年01月01日 00:00:00到这一瞬间经过的秒数 php日期时间函数time() 返回当前时间的 Unix 时间戳 microtime()...

流程控制与函数应用--php基础最详细教程

流程控制与函数应用 流程控制 顺序结构 分支结构/选择结构/条件结构 单路分支 格式:                        if(条件){                  ...

会话控制--php基础最详细教程

会话控制cookie和session 原创 什么是会话控制? COOKIE COOKIE概述 cookie技术 服务器给客户端的 礼物 就是借助 客户端 电脑 的 一个文件 来...

数组函数--php基础最详细教程

常用数组函数 原创 header('content-type:text/html;charset=utf-8'); date_default_timezone_set('PRC'); /...

字符串函数--php基础最详细教程

字符串常用函数 原创 header('content-type:text/html;charset=utf-8'); date_default_timezone_set('PRC'); //...

文件系统--php基础最详细教程

文件系统处理 原创 文件处理的作用 1.所有的项目离不开文件处理 2.可以用文件长时间保存数据 3.建立缓存,服务器中文件操作 文件处理的说明 所有文件处理都是使用系统函数完成的,是基...

正则表达式--php基础最详细教程

正则表达式简介 原创 概念: 正则表达式是用于描述字符排列和匹配模式的一种语法规则。它主要用于字符串的模式分割、匹配、查找及替换操作。 作用: 1.匹配,也常常用于从字符串中析取信息。 2.用...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:PHP的日期和时间--php基础最详细教程
举报原因:
原因补充:

(最多只允许输入30个字)