第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

PHP,重復(fù)事件使用 unix 時間戳檢查下一個事件

PHP,重復(fù)事件使用 unix 時間戳檢查下一個事件

PHP
墨色風(fēng)雨 2023-08-19 14:29:12
有一個 php 問題,我真的不知道如何解決。我有一個充滿來自 mysql 查詢的 unix 時間戳的數(shù)組。這些時間戳是每周重復(fù)的事件(例如,每周二和周四)。他們可以重復(fù)幾天或只重復(fù)一天。知道重復(fù)的日子,下一天將是哪一天。例如:在數(shù)組中我有:1595289600 --> 2020/07/21(星期二)1595116800 --> 2020/07/19(周日)今天我們的地址是 1595376000(星期三),所以它應(yīng)該返回 1595116800 + 604800(星期日)。5 天后(下周一)應(yīng)該返回 1595289600 + 604800 = 1595721600 (第一個周二 + 一周)一周后(下周三),它應(yīng)該在下周日返回(2020/08/02):1596326400等等...謝謝你!
查看完整描述

1 回答

?
開心每一天1111

TA貢獻(xiàn)1836條經(jīng)驗 獲得超13個贊

對于您擁有的每個時間戳 - 計算下一個時間戳(添加一周),直到它在當(dāng)前時間戳之后。然后從那些中返回最低的,因為那個將是最接近現(xiàn)在(但也是將來)的。


假設(shè)今天是 2020 年 7 月 22 日星期三。你的 2020-07-21 星期二已經(jīng)過去了,所以添加一周:2020-07-28 星期二 - 它是未來的,所以它是我們的候選者。你的 2020-07-19 星期日也已經(jīng)過去了,所以添加一周:2020-07-26 星期日 - 它是未來的,所以它是第二個候選者。


現(xiàn)在從 2 個候選者中選擇較低的:2020-07-26 星期日。


如果日期過去的時間較長,那么您將需要每周更多次。


像這樣的東西:


<?php


// those are your timestamps: $timestamps = [1595289600, 1595116800];

// $time is optional int for when you want to perform the calculation. defaults to current timestamp

function nextOccurence(array $timestamps, $time = null) { 

  $now = $time ?? time();


  $nextTimestamps = [];

  foreach ($timestamps as $timestamp) {

    while ($timestamp < $now) {

      $timestamp += 604800;

    }


    $nextTimestamps[] = $timestamp;

  }


  return min($nextTimestamps);

}


查看完整回答
反對 回復(fù) 2023-08-19
  • 1 回答
  • 0 關(guān)注
  • 109 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號