常用时间格式与PHP时间格式相互转换
来源:互联网 发布:什么是数据库安全性 编辑:程序博客网 时间:2024/05/29 12:19
例如有常用时间格式 yyyy-mm-dd HH:ii:ss,如何转换成PHP中date函数可使用的时间格式呢?
使用 PHPTimeFormatFromCommon() 可以把通用时间格式转换成PHP时间格式
PHPTimeFormatFromCommon('yyyy-mm-dd HH:ii:ss') => 'Y-m-d H:i:s'
使用 PHPTimeFormatToCommon() 可以把PHP时间格式转换成通用时间格式
PHPTimeFormatToCommon('Y-m-d H:i:s') => 'yyyy-mm-dd HH:ii:ss'
例如:
echo gmdate(PHPTimeFormatFromCommon('yyyy-mm-dd HH:ii:ss A DD'), time() + 8 * 3600);
结果:
2010-04-10 11:11:54 AM Saturday
具体使用说明请看代码中的注释,有详细说明。
/*
PHP Time Formatting Functions
Author: Fenying
Author: Fenying
Version: 1.0.0.1
Time: 2010-04-10
Time: 2010-04-10
CopyRight: All CopyRight Fenying Studio 2007-2010 Reserved.
*/
*/
$DS_TIME_TimeSign = array(
array('yyyy','<#0x01#>','Y'),
array('yy','<#0x02#>','y'),
array('MM','<#0x03#>','F'),
array('mm','<#0x04#>','m'),
array('M','<#0x05#>','M'),
array('m','<#0x06#>','n'),
array('t','<#0x07#>','t'),
array('dd','<#0x08#>','d'),
array('d','<#0x09#>','j'),
array('DD','<#0x10#>','l'),
array('D','<#0x11#>','jS'),
array('z','<#0x12#>','z'),
array('W','<#0x13#>','W'),
array('HH','<#0x14#>','H'),
array('hh','<#0x15#>','h'),
array('H','<#0x16#>','G'),
array('h','<#0x17#>','g'),
array('ii','<#0x18#>','i'),
array('ss','<#0x19#>','s'),
array('c','<#0x20#>','c'),
array('r','<#0x21#>','r'),
array('a','<#0x22#>','a'),
array('A','<#0x23#>','A')
);
$DS_TIME_SpecialChars = array(
'd','D','j','l','N','S','w','z',
'W','F','m','M','n','t','L','o',
'Y','y','a','A','B','g','G','h',
'H','i','s','e','I','O','T','Z',
'c','r','U'
);
/*
yyyy = 四位数年份
yy = 两位数年份
MM = 月份,英文完整单词
mm = 月份,数字,自动补0
M = 月份,英文缩写单词
m = 月份,数字,不补0
t = 月份天数,数字
dd = 日期,数字,自动补0
d = 日期,数字,不补0
DD = 星期,完整单词
D = 日期,数字,带st、nd、rd或th后缀
z = 天,数字,表示本年第几天
W = 周,数字,表示本年第几周
a = am或pm
A = AM或PM
HH = 小时,数字,24小时制,自动补0
hh = 小时,数字,12小时制,自动补0
H = 小时,数字,24小时制,不补0
h = 小时,数字,12小时制,不补0
ii = 分钟,数字,自动补0
ss = 秒钟,数字,自动补0
c = ISO 8601 格式的日期
r = RFC 822 格式的日期
*/
function PHPTimeFormatFromCommon($TimeFormat)
{
global $DS_TIME_TimeSign,$DS_TIME_SpecialChars;
foreach ($DS_TIME_TimeSignas$Item)
$TimeFormat = str_replace($Item[0],$Item[1],$TimeFormat);
foreach ($DS_TIME_SpecialCharsas$Item)
$TimeFormat = str_replace($Item,'//'.$Item,$TimeFormat);
foreach ($DS_TIME_TimeSignas$Item)
$TimeFormat = str_replace($Item[1],$Item[2],$TimeFormat);
return $TimeFormat;
}
function PHPTimeFormatToCommon($TimeFormat)
{
global $DS_TIME_TimeSign,$DS_TIME_SpecialChars;
foreach ($DS_TIME_TimeSignas$Item)
$TimeFormat = str_replace($Item[2],$Item[1],$TimeFormat);
foreach ($DS_TIME_SpecialCharsas$Item)
$TimeFormat = str_replace('//'.$Item,$Item,$TimeFormat);
foreach ($DS_TIME_TimeSignas$Item)
$TimeFormat = str_replace($Item[1],$Item[0],$TimeFormat);
return $TimeFormat;
}
array('yyyy','<#0x01#>','Y'),
array('yy','<#0x02#>','y'),
array('MM','<#0x03#>','F'),
array('mm','<#0x04#>','m'),
array('M','<#0x05#>','M'),
array('m','<#0x06#>','n'),
array('t','<#0x07#>','t'),
array('dd','<#0x08#>','d'),
array('d','<#0x09#>','j'),
array('DD','<#0x10#>','l'),
array('D','<#0x11#>','jS'),
array('z','<#0x12#>','z'),
array('W','<#0x13#>','W'),
array('HH','<#0x14#>','H'),
array('hh','<#0x15#>','h'),
array('H','<#0x16#>','G'),
array('h','<#0x17#>','g'),
array('ii','<#0x18#>','i'),
array('ss','<#0x19#>','s'),
array('c','<#0x20#>','c'),
array('r','<#0x21#>','r'),
array('a','<#0x22#>','a'),
array('A','<#0x23#>','A')
);
$DS_TIME_SpecialChars = array(
'd','D','j','l','N','S','w','z',
'W','F','m','M','n','t','L','o',
'Y','y','a','A','B','g','G','h',
'H','i','s','e','I','O','T','Z',
'c','r','U'
);
/*
yyyy = 四位数年份
yy = 两位数年份
MM = 月份,英文完整单词
mm = 月份,数字,自动补0
M = 月份,英文缩写单词
m = 月份,数字,不补0
t = 月份天数,数字
dd = 日期,数字,自动补0
d = 日期,数字,不补0
DD = 星期,完整单词
D = 日期,数字,带st、nd、rd或th后缀
z = 天,数字,表示本年第几天
W = 周,数字,表示本年第几周
a = am或pm
A = AM或PM
HH = 小时,数字,24小时制,自动补0
hh = 小时,数字,12小时制,自动补0
H = 小时,数字,24小时制,不补0
h = 小时,数字,12小时制,不补0
ii = 分钟,数字,自动补0
ss = 秒钟,数字,自动补0
c = ISO 8601 格式的日期
r = RFC 822 格式的日期
*/
function PHPTimeFormatFromCommon($TimeFormat)
{
global $DS_TIME_TimeSign,$DS_TIME_SpecialChars;
foreach ($DS_TIME_TimeSignas$Item)
$TimeFormat = str_replace($Item[0],$Item[1],$TimeFormat);
foreach ($DS_TIME_SpecialCharsas$Item)
$TimeFormat = str_replace($Item,'//'.$Item,$TimeFormat);
foreach ($DS_TIME_TimeSignas$Item)
$TimeFormat = str_replace($Item[1],$Item[2],$TimeFormat);
return $TimeFormat;
}
function PHPTimeFormatToCommon($TimeFormat)
{
global $DS_TIME_TimeSign,$DS_TIME_SpecialChars;
foreach ($DS_TIME_TimeSignas$Item)
$TimeFormat = str_replace($Item[2],$Item[1],$TimeFormat);
foreach ($DS_TIME_SpecialCharsas$Item)
$TimeFormat = str_replace('//'.$Item,$Item,$TimeFormat);
foreach ($DS_TIME_TimeSignas$Item)
$TimeFormat = str_replace($Item[1],$Item[0],$TimeFormat);
return $TimeFormat;
}
- 常用时间格式与PHP时间格式相互转换
- mysql 时间戳格式与常用可读时间格式相互转换
- php 时间格式转换
- js 时间格式与时间戳的相互转换
- 时间戳与时间格式的相互转换
- php时间戳与date格式转换
- 时间格式和json时间格式相互转换
- mysql 时间戳与日期格式的相互转换
- mysql 时间戳与日期格式的相互转换
- mysql 时间戳与日期格式的相互转换
- mysql 时间戳与日期格式的相互转换
- mysql 时间戳与日期格式之间相互转换
- mysql 时间戳与日期格式的相互转换
- js时间戳与日期格式之间的相互转换
- php 转换时间日期格式
- 个人备忘--时间格式的相互转换
- iOS时间格式的相互转换
- Java时间格式的相互转换
- 关于打印机设置的讨论
- linux上的几个放可执行文件的目录有什么不同?
- sql语句遇到的问题
- 一些简写的全称
- 用TTcpClient和TTcpServer进行文件的传输
- 常用时间格式与PHP时间格式相互转换
- 存储结构和关系
- USACO 2.3 money
- java连接数据库的几种方式
- 前后台同步短信数据表
- 搭建LAMP 环境 细节:--- 安装apache
- 根据文件的头信息判断文件类型
- Intersect, Except, Union, All and Any(1)
- OpenGL的Bezier样条曲线函数