php - 将新项目添加到 PHP 数组中并保存数组的先前大小

标签 php arrays date

到目前为止,我有以下代码:

$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/

相关文章:

PHP在保留键的同时获取关联数组的最后3个元素?

date - Uncaught Error : Error serializing unrecognized object about a date in react

java - TimeZone 困扰着我的日期时间解析

php - 使用 PHP 将多个 HTML 字段更新到 MySQL 数据库中

php - jQuery移动ajax登录表单例份验证

python - 生成与现有一维数组具有预先指定相关性的 NumPy 一维数组?

arrays - 将 [type_a] 转换为 [type_b]

java - 减去日期时出现意外结果

javascript - 用数组生成多维对象

php - 在mysql中使用变量作为参数