Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP正则表达式提取日期_Php_Regex_String - Fatal编程技术网

PHP正则表达式提取日期

PHP正则表达式提取日期,php,regex,string,Php,Regex,String,我有$date变量2009-04-29,它是Y-m-d 任何人都可以给出如何使用尽可能最简单的方法提取到$d,$m,$y的想法? 正则表达式更好。 将选择更多简单方法的建议。:) 使用explode功能 list ( $y, $m , $d ) = explode( '-' , $date ) ; 有关更多信息,请参阅以下链接 通过使用 $y = substr($date, 0,4); $m = substr($date, 5,2); $d = substr($date, -2); 编辑:

我有
$date
变量
2009-04-29
,它是
Y-m-d

任何人都可以给出如何使用尽可能最简单的方法提取到
$d
$m
$y
的想法? 正则表达式更好。
将选择更多简单方法的建议。:)

使用
explode
功能

list ( $y, $m , $d ) = explode( '-' , $date ) ; 
有关更多信息,请参阅以下链接


通过使用

$y = substr($date, 0,4);
$m = substr($date, 5,2);
$d = substr($date, -2);
编辑:如果你真的想要正则表达式,你会有一个=)

试一试


(我不知道表达式中的反斜杠是否需要转义,抱歉)

记住:将选择最简单的方法,但最好是正则表达式。:)我想了解更多关于regex的信息。我们可以使用list来简化代码吗?@apsi17:Dunno。只需尝试
preg_match('/(\d{4})-(\d{2})-(\d{2})/',$date,list(,$y,$m,$d))
,然后返回报告。目前我没有可用的php解释器。它不工作<代码>分析错误:语法错误,意外“'),应为“=”
preg_match('/(\d{4})-(\d{2})-(\d{2})/',  $date, $matches)
$y = $matches[1];
$m = $matches[2];
$d = $matches[3];