php checkdate、getdate等日期时间函数操作详解


Posted in PHP onMarch 11, 2010

checkdate($month,$date,$year)

如果应用的值构成一个有效日期,则该函数返回为真。例如,对于错误日期2005年2月31日,此函数返回为假。

在日期用于计算或保存在数据库中之前,可用此函数检查日期并使日期生效。

<?php 
// returns false 
echo checkdate(2,30,2005) ? "valid" : "invalid"; 
// returns true 
echo checkdate(4,6,2010) ? "valid" : "invalid"; 
?>

getdate($ts)


在没有自变量的情况下,该函数以结合数组的方式返回当前日期与时间。数组中的每个元素代表日期/时间值中的一个特定组成部分。可向函数提交可选的时间标签自变量,以获得与时间标签对应的日期/时间值。

应用此函数来获得一系列离散的,容易分离的日期/时间值。

<?php 
// get date as associative array 
$arr = getdate(); 
echo "Date is " . $arr['mday'] . " " . $arr['weekday'] . " " . $arr['year']; 
echo "Time is " . $arr['hours'] . ":" . $arr['minutes']; 
?>

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


此函数的作用与getdate()的作用相反:它由一系列的日期与时间值生成一个UNIX时间标签(GMT时间1970年1月1日到现在消逝的秒数)。不用自变量时,它生成当前时间的UNIX时间标签。

用此函数获得即时时间的UNIX时间标签。这种时间标签通常用于许多数据库与程序语言中。

<?php 
// returns timestamp for 13:15:23 7-Jun-2006 
echo mktime(13,15,23,6,7,2006); 
?>

date($format, $ts)


此函数将UNIX时间标签格式化成一个可人为阅读的日期字符串。它是PHP日期/时间API中功能最为强大的函数,可用在一系列的修正值中,将整数时间标签转变为所需的字符串格式。

为显示格式化时间或日期时,应用此函数。

<?php 
// format current date 
// returns "13-Sep-2005 01:16 PM" 
echo date("d-M-Y h:i A", mktime()); 
?>

strtotime($str)


此函数将可人为阅读的英文日期/时间字符串转换成UNIX时间标签。

应用此函数将非标准化的日期/时间字符串转换成标准、兼容的UNIX时间标签。

<?php 
// returns 13-Sep-05 
echo date("d-M-y", strtotime("today")); 
// returns 14-Sep-05 
echo date("d-M-y", strtotime("tomorrow")); 
// returns 16-Sep-05 
echo date("d-M-y", strtotime("today +3 days")); 
?>

strftime($format,$ts)


如前面的setlocale()函数定义的那样,此函数将UNIX时间标签格式化成适用于当前环境的日期字符串。

应用此函数建立与当前环境兼容的日期字符串。

<?php 
// set locale to France (on Windows) 
setlocale(LC_TIME, "fra_fra"); 
// format month/day names 
// as per locale setting 
// returns "septembre" and "mardi" 
echo strftime("Month: %B "); 
echo strftime("Day: %A "); 
?>

microtime()

如前面的setlocale()函数定义的那样,此函数将UNIX时间标签格式化成适用于当前环境的日期字符串。

应用此函数建立与当前环境兼容的日期字符串。

<?php 
// get starting value 
$start = microtime(); 
// run some code 
for ($x=0; $x<1000; $x++) { 
$null = $x * $x; 
} 
// get ending value 
$end = microtime(); 
// calculate time taken for code execution 
echo "Elapsed time: " . ($end - $start) ." sec"; 
?>

gmmktime($hour, $minute, $second, $month, $day, $year)


此函数由一系列用GMT时间表示的日期与时间值生成一个UNIX时间标签。不用自变量时,它生成一个当前GMT即时时间的UNIX时间标签。

用此函数来获得GMT即时时间的UNIX时间标签。

<?php 
// returns timestamp for 12:25:23 9-Jul-2006 
echo gmmktime(12,25,23,7,9,2006); 
?>

gmdate($format, $ts)


此函数将UNIX时间标签格式化成可人为阅读的日期字符串。此日期字符串以GMT(非当地时间)表示。

用GMT表示时间标签时应用此函数。

<?php 
// format current date into GMT 
// returns "13-Sep-2005 08:32 AM" 
echo gmdate("d-M-Y h:i A", mktime()); 
?>

date_default_timezone_set($tz)、date_default_timezone_get()


此函数此后所有的日期/时间函数调用设定并恢复默认的时区。

注:此函数仅在PHP 5.1+中有效。

此函数是一个方便的捷径,可为以后的时间操作设定时区。

<?php 
// set timezone to UTC 
date_default_timezone_set('UTC'); 
?>
PHP 相关文章推荐
PHP中的正规表达式(一)
Oct 09 PHP
改变Apache端口等配置修改方法
Jun 05 PHP
使用php+Ajax实现唯一校验实现代码[简单应用]
Nov 29 PHP
使用gd库实现php服务端图片裁剪和生成缩略图功能分享
Dec 25 PHP
自己写的兼容低于PHP 5.5版本的array_column()函数
Oct 24 PHP
Laravel中使用自己编写类库的3种方法
Feb 10 PHP
ThinkPHP模板Volist标签嵌套循环输出多维数组的方法
Mar 23 PHP
PHP实现的多文件上传类及用法示例
May 06 PHP
深入浅析PHP的session反序列化漏洞问题
Jun 15 PHP
YII框架页面缓存操作示例
Apr 29 PHP
PHP 99乘法表的几种实现代码
Oct 13 PHP
php慢查询日志和错误日志使用详解
Feb 27 PHP
PHP 5.3新特性命名空间规则解析及高级功能
Mar 11 #PHP
PHP Memcached + APC + 文件缓存封装实现代码
Mar 11 #PHP
了解Joomla 这款来自国外的php网站管理系统
Mar 11 #PHP
PHP调用Twitter的RSS的实现代码
Mar 10 #PHP
PHP中include()与require()的区别说明
Mar 10 #PHP
PHP扩展编写点滴 技巧收集
Mar 09 #PHP
php 修改zen-cart下单和付款流程以防止漏单
Mar 08 #PHP
You might like
解决了Ajax、MySQL 和 Zend Framework 的乱码问题
2009/03/03 PHP
Look And Say 序列php实现代码
2011/05/22 PHP
基于curl数据采集之单页面采集函数get_html的使用
2013/04/28 PHP
解析php中call_user_func_array的作用
2013/06/07 PHP
学习php设计模式 php实现访问者模式(Visitor)
2015/12/07 PHP
php观察者模式应用场景实例详解
2017/02/03 PHP
php实现通过stomp协议连接ActiveMQ操作示例
2020/02/23 PHP
Jquery操作Select 简单方便 一个js插件搞定
2009/11/12 Javascript
基于JQuery的密码强度验证代码
2010/03/01 Javascript
情人节之礼 js项链效果
2012/02/13 Javascript
js全屏显示显示代码的三种方法
2013/11/11 Javascript
jquerydom对象的事件隐藏显示和对象数组示例
2013/12/10 Javascript
浅谈页面装载js及性能分析方法
2014/12/09 Javascript
JQuery中使文本框获得焦点的方法实例分析
2015/02/28 Javascript
JavaScript事件详细讲解
2016/06/27 Javascript
js输出数据精确到小数点后n位代码
2016/07/02 Javascript
探究JavaScript中的五种事件处理程序方式
2016/12/07 Javascript
jQuery开源组件BootstrapValidator使用详解
2017/06/29 jQuery
浅谈实现vue2.0响应式的基本思路
2018/02/13 Javascript
使用puppeteer爬取网站并抓出404无效链接
2018/12/20 Javascript
Vue实现简易计算器
2020/02/25 Javascript
python多线程threading.Lock锁用法实例
2014/11/01 Python
安装ElasticSearch搜索工具并配置Python驱动的方法
2015/12/22 Python
基于Python数据可视化利器Matplotlib,绘图入门篇,Pyplot详解
2017/10/13 Python
pandas进行时间数据的转换和计算时间差并提取年月日
2019/07/06 Python
Python xlwt模块使用代码实例
2020/06/10 Python
HTML5全屏(Fullscreen)API详细介绍
2015/04/24 HTML / CSS
英国天然抗衰老护肤品品牌:Nakin Skin Care
2019/04/16 全球购物
英国最大的汽车配件在线商店:Euro Car Parts
2019/09/30 全球购物
体育教师自荐信范文
2013/12/16 职场文书
创新比赛获奖感言
2014/02/13 职场文书
境外导游求职信
2014/02/27 职场文书
医院节能减排方案
2014/06/13 职场文书
临床医学生职业规划书范文
2014/10/25 职场文书
优秀范文:《但愿人长久》教学反思3篇
2019/10/24 职场文书
go:垃圾回收GC触发条件详解
2021/04/24 Golang