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语法速查表
Jan 02 PHP
五款常用mysql slow log分析工具的比较分析
May 22 PHP
基于PHP创建Cookie数组的详解
Jul 03 PHP
PHP保留两位小数并且四舍五入及不四舍五入的方法
Sep 22 PHP
ThinkPHP中的create方法与自动令牌验证实例教程
Aug 22 PHP
php中file_get_content 和curl以及fopen 效率分析
Sep 19 PHP
php获得网站访问统计信息类Compete API用法实例
Apr 02 PHP
php实现微信公众号无限群发
Oct 11 PHP
CI框架源码解读之利用Hook.php文件完成功能扩展的方法
May 18 PHP
thinkphp5 加载静态资源路径与常量的方法
Dec 24 PHP
PHP自定义函数实现assign()数组分配到模板及extract()变量分配到模板功能示例
May 23 PHP
解决laravel5中auth用户登录其他页面获取不到登录信息的问题
Oct 08 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
PHP的FTP学习(四)
2006/10/09 PHP
win7+apache+php+mysql环境配置操作详解
2013/06/10 PHP
FastCGI 进程意外退出造成500错误
2015/07/26 PHP
PHP执行普通shell命令流程解析
2020/08/24 PHP
List all the Databases on a SQL Server
2007/06/21 Javascript
Javascript对象中关于setTimeout和setInterval的this介绍
2012/07/21 Javascript
Jquery事件的连接使用示例
2013/06/18 Javascript
JQuery判断checkbox是否选中及其它复选框操作方法合集
2015/06/01 Javascript
jQuery插件Flexslider实现图片轮播、图文结合滑动切换效果
2020/04/16 Javascript
JavaScript 栈的详解及实例代码
2017/01/22 Javascript
解析Angular 2+ 样式绑定方式
2018/01/15 Javascript
使用vuex存储用户信息到localStorage的实例
2019/11/11 Javascript
[17:36]VG战队纪录片
2014/08/21 DOTA
[06:53]2018DOTA2国际邀请赛寻真——为复仇而来的Newbee
2018/08/15 DOTA
在Heroku云平台上部署Python的Django框架的教程
2015/04/20 Python
Python合并多个装饰器小技巧
2015/04/28 Python
Python中函数的参数定义和可变参数用法实例分析
2015/06/04 Python
OpenCV HSV颜色识别及HSV基本颜色分量范围
2019/03/22 Python
django使用haystack调用Elasticsearch实现索引搜索
2019/07/24 Python
django+echart数据动态显示的例子
2019/08/12 Python
使用Python给头像加上圣诞帽或圣诞老人小图标附源码
2019/12/25 Python
opencv 查找连通区域 最大面积实例
2020/06/04 Python
CSS3 绘制BMW logo实的现代码
2013/04/25 HTML / CSS
html5指南-3.如何实现html元素拖拽功能
2013/01/07 HTML / CSS
JD Sports荷兰:英国领先的运动时尚零售商
2020/03/13 全球购物
实习鉴定范文
2013/12/19 职场文书
通信生自我鉴定
2014/01/18 职场文书
课外访万家心得体会
2014/09/03 职场文书
2014年安全工作总结范文
2014/11/13 职场文书
2014年工程师工作总结
2014/11/25 职场文书
普宁寺导游词
2015/02/04 职场文书
写给媳妇的检讨书
2015/05/06 职场文书
防卫过当辩护词
2015/05/21 职场文书
2016年五一国际劳动节活动总结
2016/04/06 职场文书
发言稿之优秀教师篇
2019/09/26 职场文书
实习员工转正的评语汇总,以备不时之需
2019/12/17 职场文书