PHP常规匹配日期和时间(时间戳转换)示例代码

首先是一个简单实用的代码

日期日期


$ =;
与美元= preg_match( / ^ D { 4 }( / | |。) D {1,2} 1 四{1,2} $ ,$str,$matches);
var_dump(合中,$matches);


PHP需要一定的时间格式转换成时间戳。它意味着从01到01的1970, 00秒,00分钟和00秒的总秒数,这需要PHP的定期判断。


< PHP
/ /匹配时间格式2016-02-16或2016-02-16 23:59:59前面的0可以不写
$时间=2016-12-14 23:59:59 ;
$模式= / ^ D { 4 } {非}(0 { } | 1-9 1 { 012 }){非}(0 { 1-9 } | { 12 } { } | 0-9 3 { 01 })( +(0 { 1 } { | 0-9 0-9 } | 2 { 0-3 }:(0){ } { } { 1-5 | 0-9 0-9 }):(0 { } { } { 1-5 | 0-9 0-9 }) / );
如果(preg_match(合模式,为时间)){
echo $ timestro = strtotime(合时间);
{人}
错误;
}
>


规则分析:



/ ^ D { 4 } {非}(0 { } | 1-9 1 { 012 }){非}(0 { 1-9 } | { 12 } { } | 0-9 3 { 01 })( +(0-9 0 { } | { 12 } { 0-3 }:(0){ } { } { 0-9 | 1-5 1-9 }):(0 { } { } { 0-9 | 1-5 1-9 }) /)

表达式的开始/结束

字符串的开始,以***开始

$表示字符串的结束,也就是字符串的结束。

|说或

()()表示一个单位

d { 4 }匹配一个4位数字,

(-)a - NO,

(0 { 1 } { 012 } | 1-9月)匹配,

(0 } { 1-9 | { 12 } { } | 0-9 3 { 01 })比赛的日子,

( +(0 { 1 } { } | 0-9 0-9 | 2 { 0 }):(0 { } { } { 1-5 | 0-9 0-9 }:(0){ } { } { 1-5 | 0-9 0-9 })),当整个部分表达或不表达。

最后一步是对比赛的成功部分进行时间戳转换。

当前转换的结果是:1329407999。

用我自己的例子,代码如下所示:




< PHP
$str =呵呵2010 / 07 / 08 12:31:56哈哈1999 / 12 / 31 13:21:45 ;
呵呵2010-07-08 str2 =美元12:31:56哈哈1999-12-31 13:21:45 ;
仅, /日期
preg_match_all( / / D D { 4 } { 2 } / / { 2 }
preg_match_all( / D { 4 } - { 2 } - { 2 } /
、日期和时间
preg_match_all( / / D D { 4 } { 2 } / D { 2 } { 2 }:SD D { 2 }:D { 2 } /
preg_match_all( / D { 4 } - { 2 } - { 2 } { 2 }:SD D { 2 }:D { 2 } /
回声'匹配日期';
print_r($ ARR);
print_r($ arr2);
回声'匹配日期和时间';
print_r($ ARR3);
print_r($ ARR4);
>



以上是PHP日期和时间的常规内容,当然还有很多是前端JS验证,您可以参考其他文章。