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在Web开发领域的优势
Oct 09 PHP
随机广告显示(PHP函数)
Oct 09 PHP
初学CAKEPHP 基础教程
Nov 02 PHP
php下保存远程图片到本地的办法
Aug 08 PHP
php自动注册登录验证机制实现代码
Dec 20 PHP
PHP获取当前url的具体方法全面解析
Nov 26 PHP
将php数组输出html表格的方法
Feb 24 PHP
PHP采集静态页面并把页面css,img,js保存的方法
Dec 23 PHP
示例详解Laravel重置密码代码重构
Aug 10 PHP
Yii2学习笔记之汉化yii设置表单的描述(属性标签attributeLabels)
Feb 07 PHP
PHP设计模式之委托模式定义与用法简单示例
Aug 13 PHP
一文搞懂php的垃圾回收机制
Jun 18 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知识收集
2012/08/20 PHP
php微信公众号开发(4)php实现自定义关键字回复
2016/12/15 PHP
用javascript实现无刷新更新数据的详细步骤 asp
2006/12/26 Javascript
jQuery+.net实现浏览更多内容(改编php版本)
2013/03/28 Javascript
禁止ajax缓存获取程序最新数据的方法
2013/11/19 Javascript
javascript运行机制之this详细介绍
2014/02/07 Javascript
扒一扒JavaScript 预解释
2015/01/28 Javascript
基于jQuery实现最基本的淡入淡出效果实例
2015/02/02 Javascript
JavaScript AOP编程实例
2015/06/16 Javascript
浅谈JS继承_借用构造函数 &amp; 组合式继承
2016/08/16 Javascript
利用Angularjs中模块ui-route管理状态的方法
2016/12/27 Javascript
微信小程序开发之Tabbar实例详解
2017/01/09 Javascript
bootstrap选项卡使用方法解析
2017/01/11 Javascript
JS去掉字符串前后空格、阻止表单提交的实现代码
2017/06/08 Javascript
Vue.js实现双向数据绑定方法(表单自动赋值、表单自动取值)
2018/08/27 Javascript
vue-cli2与vue-cli3在一台电脑共存的实现方法
2019/09/25 Javascript
jQuery zTree如何改变指定节点文本样式
2020/10/16 jQuery
[02:05]2014DOTA2西雅图邀请赛 专访啸天mik夫妻档
2014/07/08 DOTA
[00:59]DOTA2背景故事第二期之四大基本法则
2020/07/07 DOTA
Python+Wordpress制作小说站
2017/04/14 Python
你眼中的Python大牛 应该都有这份书单
2017/10/31 Python
Python实现PS图像抽象画风效果的方法
2018/01/23 Python
python文本数据处理学习笔记详解
2019/06/17 Python
python爬虫模拟浏览器访问-User-Agent过程解析
2019/12/28 Python
keras实现多种分类网络的方式
2020/06/11 Python
Django数据模型中on_delete使用详解
2020/11/30 Python
open_basedir restriction in effect. 原因与解决方法
2021/03/14 PHP
Canvas与Image互相转换示例代码
2013/08/09 HTML / CSS
瑜伽服装品牌:露露柠檬(lululemon athletica)
2017/06/04 全球购物
Made in Design英国:设计家具、照明、家庭装饰和花园家具
2019/09/24 全球购物
Android面试题附答案
2014/12/08 面试题
北京某科技有限公司C# .net笔试题
2014/09/27 面试题
一年级班主任寄语
2014/01/19 职场文书
学生会主席演讲稿
2014/04/25 职场文书
公安机关查摆剖析材料
2014/10/10 职场文书
关于python类SortedList详解
2021/09/04 Python