从日期字符串中删除月和日

时间:2014-09-18 19:38:55

标签: php

我正在试图弄清楚如何从这个变量中删除Day和Month,因为它已循环播放。我已经尝试了几个strtotime()函数,但我无法正确理解语法。

foreach ( $results as $result) {
   echo $result->date . "<br />";
}

显示如下日期:

2014-09-03
2013-09-09
2011-06-01

如何重新分配变量$ result-&gt; date,以便它只显示如下年份:

2014
2013
2011

3 个答案:

答案 0 :(得分:1)

简单的方法就是使用'-'分隔符来分解日期字符串并使用年元素:

foreach ( $results as $result) {
   $dateArr = explode('-', $result->date);
   echo $dateArr[0] . "<br />";
}

更复杂的方法是使用strtotime函数将sting转换为UNIX时间戳,然后使用date函数重新格式化。

答案 1 :(得分:1)

只需使用substr:

$date = '2014-09-18';
echo substr($date, 0, 4);   // Outputs 2014

答案 2 :(得分:0)

这可以解决您的问题

foreach ( $results as $result) {
   $dateParams = explode("-",$result->data);
   $result->date = $dateParams[0];
   echo $result->date."<br />";
}