我使用date('w', timestamp)
和date('w', timestamp)
知道这一天,date('n', timestamp)
几个月等等。
现在我正在使用日期时间,我想知道从日期时间获得一天,一个月等的等效函数。
PS:我知道我可以在SQL查询中使用UNIX_TIMESTAMP()
,但我更喜欢在我的代码中避免使用时间戳。
答案 0 :(得分:90)
$datetime = new DateTime($dateTimeString);
echo $datetime->format('w');
答案 1 :(得分:21)
查看手册:http://www.php.net/manual/en/datetime.format.php
<?php
$date = new DateTime('2000-01-01');
echo $date->format('Y-m-d H:i:s');
?>
将输出:2000-01-01 00:00:00
答案 2 :(得分:0)
如果你想使用php循环显示,试试下面的代码
<span>
<select name="birth_month">
<?php for( $m=1; $m<=12; ++$m ) {
$month_label = date('F', mktime(0, 0, 0, $m, 1));
?>
<option value="<?php echo $month_label; ?>"><?php echo $month_label; ?></option>
<?php } ?>
</select>
</span>
<span>
<select name="birth_day">
<?php
$start_date = 1;
$end_date = 31;
for( $j=$start_date; $j<=$end_date; $j++ ) {
echo '<option value='.$j.'>'.$j.'</option>';
}
?>
</select>
</span>
<span>
<select name="birth_year">
<?php
$year = date('Y');
$min = $year - 60;
$max = $year;
for( $i=$max; $i>=$min; $i-- ) {
echo '<option value='.$i.'>'.$i.'</option>';
}
?>
</select>
</span>