到目前为止,我有以下代码:
$months = array();
$numJoin = date("n",strtotime($me['joinTime']));
$numLast = date('n', strtotime('Dec 31'));
$numCurrent = date("n",strtotime('2016-06-01'));
array_push($months, date("F", strtotime($me['joinTime'])));
for($i = ($numJoin + 1); $i <= $numLast; $i++) {
if($numCurrent>$numJoin) {
$dateObj = date_create_from_format('!m', $i);
array_push($months, $dateObj->format('F'));
}
$numCurrent= -1;
}
我在这里要做的是将开始的当前月份添加到数组中,并将前几个月保存在数组中,例如:
开始月份是 -> 五月 六月开始 -> 我将六月添加到数组中(现在我应该在数组中包含五月和六月)。
七月开始 -> 我将七月添加到数组中(现在我应该在数组中包含五月、六月和七月)。
我怎样才能做到这一点?当前解决方案仅适用于 +1 个月。我不能添加超过 1 个月:/
附言新的项目应该只在新的月份开始时添加,并且应该保存数组以前的内容...
最佳答案
开始吧,您需要检查您的月份是否小于当前月份。 Check Online
$months = array();
$num = date("n",strtotime($me['joinTime'])); //join month number
$now = date("n"); //Current month number
for($i = $num; $i <= $now; $i++){
$dateObj = DateTime::createFromFormat('!m', $i);
array_push($months, $dateObj->format('F'));
}
print_r($months);
关于php - 将新项目添加到 PHP 数组中并保存数组的先前大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37523783/