我有一个Date值数组,格式为'Y-m-d'
。我想循环遍历数组,只提取每个成员的日期('d'
),但无法弄清楚它是如何拆分的。我是否以某种方式使用子串?
简单地说,我有'2010-11-24'
,我想从中获得'24'
。当天的问题可能是单数或双数。
答案 0 :(得分:64)
如果你有PHP< 5.3,使用strtotime()
:
$string = "2010-11-24";
$timestamp = strtotime($string);
echo date("d", $timestamp);
如果您有PHP> = 5.3,请使用基于DateTime
的解决方案createFromFormat - DateTime
是未来,可以处理超过1900年和2038年的日期:
$string = "2010-11-24";
$date = DateTime::createFromFormat("Y-m-d", $string);
echo $date->format("d");
答案 1 :(得分:5)
$date = '2010-11-24';
list($y, $m, $d) = explode('-', $date);
甚至
$date = '2010-11-24';
$d = substr($date, strrpos($date, '-') + 1);
免责声明:两者都是oldschool!
答案 2 :(得分:0)
php> $d = '2010-11-24';
'2010-11-24'
php> $fields = explode('-', $d);
array (
0 => '2010',
1 => '11',
2 => '24',
)
php> $fields[2];
'24'
答案 3 :(得分:0)
<?php
$dates = array('2010-01-01', '2010-01-02', '2010-01-03', '2010-01-23');
foreach ($dates as $date) {
$day[] = substr($date, 8, 2);
}
var_dump($day);
?>
答案 4 :(得分:0)
qsex age ranges RuCitySize FOM_quota
Женский 18-24 100-500 3.680865193
Женский 18-24 500-млн 1.764538469
Женский 18-24 Миллионники 2.295797363
答案 5 :(得分:0)
尝试使用date_parse_from_format
,例如:
date_parse_from_format('Y-m-d', '2010-11-24')['day'];
在shell中测试:
$ php -r "echo date_parse_from_format('Y-m-d', '2010-11-24')['day'];"
24
答案 6 :(得分:0)
$ dt =“ 2008/02/23”;
echo'Day is'。 date(“ d”,strtotime($ dt));