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 相关文章推荐
用libTemplate实现静态网页的生成
Oct 09 PHP
php自动适应范围的分页代码
Aug 05 PHP
php小型企业库存管理系统的设计与实现代码
May 16 PHP
PHP写的求多项式导数的函数代码
Jul 04 PHP
关于php内存不够用的快速解决方法
Oct 26 PHP
PHP函数eval()介绍和使用示例
Aug 20 PHP
Laravel框架中扩展函数、扩展自定义类的方法
Sep 04 PHP
php判断一个数组是否为有序的方法
Mar 27 PHP
php连接oracle数据库的方法(测试成功)
May 26 PHP
PHP安装GeoIP扩展根据IP获取地理位置及计算距离的方法
Jul 01 PHP
PHP简单实现图片格式转换(jpg转png,gif转png等)
Oct 30 PHP
php+iframe 实现上传文件功能示例
Mar 04 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结合飞信 免费天气预报短信
2009/05/07 PHP
Yii2使用自带的UploadedFile实现的文件上传
2016/06/20 PHP
php 输出json及显示json中的中文汉字详解及实例
2016/11/09 PHP
php批量删除操作代码分享
2017/02/26 PHP
thinkPHP实现的省市区三级联动功能示例
2017/05/05 PHP
php实现的表单验证类完整示例
2019/08/13 PHP
PHP实现Snowflake生成分布式唯一ID的方法示例
2020/08/30 PHP
表单验证的完整应用案例探讨
2013/03/29 Javascript
checkbox使用示例
2013/08/23 Javascript
显示今天的日期js代码(阳历和农历)
2014/09/30 Javascript
深入理解jquery中的事件与动画
2016/05/24 Javascript
轮播图组件js代码
2016/08/08 Javascript
JavaScript trim 实现去除字符串首尾指定字符的简单方法
2016/12/27 Javascript
百度地图API之百度地图退拽标记点获取经纬度的实现代码
2017/01/12 Javascript
JS和canvas实现俄罗斯方块
2017/03/14 Javascript
详解Vue.js入门环境搭建
2017/03/17 Javascript
Vue项目中引入外部文件的方法(css、js、less)
2017/07/24 Javascript
AngularJS service之select下拉菜单效果
2017/07/28 Javascript
jQuery实现对网页节点的增删改查功能示例
2017/09/18 jQuery
Vue修改项目启动端口号方法
2019/11/07 Javascript
jQuery 动态粒子效果示例代码
2020/07/07 jQuery
解决nuxt 自定义全局方法,全局属性,全局变量的问题
2020/11/05 Javascript
[01:32]寻找你心中的那团火 DOTA2 TI9火焰传递活动今日开启
2019/05/16 DOTA
通过C++学习Python
2015/01/20 Python
详解python调度框架APScheduler使用
2017/03/28 Python
Python排序搜索基本算法之希尔排序实例分析
2017/12/09 Python
django框架模板中定义变量(set variable in django template)的方法分析
2019/06/24 Python
Python3中urlencode和urldecode的用法详解
2019/07/23 Python
pytorch索引查找 index_select的例子
2019/08/18 Python
Python 脚本拉取 Docker 镜像问题
2019/11/10 Python
奥巴马演讲稿
2014/01/08 职场文书
一年级数学下册复习计划
2015/01/17 职场文书
世界气象日活动总结
2015/02/27 职场文书
高校自主招生校长推荐信
2015/03/23 职场文书
三好学生主要事迹材料
2015/11/03 职场文书
Pytorch中TensorBoard及torchsummary的使用详解
2021/05/12 Python