创建以月日为标题的表。PHP
我想创建一个这样的表创建以月日为标题的表。PHP,php,date,Php,Date,我想创建一个这样的表 Oct-01 | Oct-02 | Oct-03 | Oct-04 | etc etc 用现在的月份 我用这个来获得第一天 $first = date('01-m-Y',strtotime('this month')); 我怎样才能增加这个月的天数呢 使用每月的校准天数(校准公历,日期(j),2013) 但是如何增加第一天。 我尝试在strotime中使用“+1天”,但什么也没发生 有什么想法吗?PHP的DateTime类可以在这里使用。您不需要使用cal\u day
Oct-01 | Oct-02 | Oct-03 | Oct-04 | etc etc
用现在的月份
我用这个来获得第一天
$first = date('01-m-Y',strtotime('this month'));
我怎样才能增加这个月的天数呢
使用每月的校准天数(校准公历,日期(j),2013)
但是如何增加第一天。
我尝试在strotime中使用“+1天”,但什么也没发生
有什么想法吗?
PHP的DateTime
类可以在这里使用。您不需要使用cal\u days\u in\u month
函数来计算一个月的天数--DateTime
自动处理它。而且它更干净,支持多种日期
<?php
$days = array();
$maxDay = cal_days_in_month(CAL_GREGORIAN, date('j'), date('Y'));
for($i = 1; $i<$maxDay; ++$i) {
$days[] = sprintf(date('M')."-%1$02d", $i);
}
echo "<pre>";
var_dump($days);
以下是方法:
$date = new DateTime();
$date->modify('first day of this month');
$days = array();
for($i = 1; $i <= $date->format('t'); $i++){
$days[] = $date->format('M-d');
$date->modify('+1 day');
}
$start=new DateTime(“本月的第一天”);
$end=新日期时间(“本月第一天+1个月”);
$period=new DatePeriod($start,new DateInterval('P1D'),$end);
foreach($期间为$天){
echo$day->格式('M-d')。“
”;
}
我更喜欢使用DateTime对象:
$date=new DateTime();
$date->modify(‘本月第一天’);
$days=array();
对于($i=1;$i格式('t');$i++){
$days[]=$date->format('M-d');
$date->modify(“+1天”);
}
您还可以将整个日期对象添加到数组中,以便以后可以灵活地使用它。我想我不理解这个问题,但如果您的意思是如何将1天添加到$first变量中,我想如果您希望0在一位数天之前,那么它是格式('M-DD')吗
@Casey:它已经做到了。请看演示。而D
用于不同的内容(它显示日期——周一、周二、周三等)。只需注意:这将输出类似于Oct TueTue
,Oct WedWed
的内容,这可能不是OP想要的。见.)的确如此。我一定没有正确阅读这个+1:这是一个没有日期周期的好例子。p、 您的链接不是关于格式化输出日期,而是关于支持的输入格式。请参见输出格式。
$date = new DateTime();
$date->modify('first day of this month');
$days = array();
for($i = 1; $i <= $date->format('t'); $i++){
$days[] = $date->format('M-d');
$date->modify('+1 day');
}