2014-09-18 70 views
1

我想弄清楚如何从该变量中删除Day和Month,因为它是循环的。我已经尝试了几个strtotime()函数,但我无法理解语法。从日期字符串中删除月份和日期字符串

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

显示日期是这样的:

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

我怎样才能重新分配变量$ result->日期,以便它只能说明年是这样的:

2014 
2013 
2011 

回答

1

简单的方法是只是使用'-'分隔符并采用年份元素来爆炸日期字符串:

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

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

+0

感谢嗨,这只是给了我飞奔了这些年来,我的输出是: - - - – BradM 2014-09-18 19:48:23

+0

对不起,看看更正的答案 – zavg 2014-09-18 19:49:28

+0

这是完美的!非常感谢! – BradM 2014-09-18 19:51:01

0

只需使用SUBSTR:

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

这可以解决你的问题

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