2

日付を受け取り、その時点と現在の時刻 (秒単位) の差を返す関数があります。1日未満のすべての場合に問題なく機能します。しかし、1 年先の日付を入力しても、約 84,000 秒の数値が返されます (1 日は約 86,400 秒です)。

def calc_time(date):
    future_date = str(date)
    t_now = str(datetime.utcnow())
    t1 = datetime.strptime(t_now, "%Y-%m-%d %H:%M:%S.%f")
    t2 = datetime.strptime(future_date, "%Y-%m-%d %H:%M:%S.%f")
    return ((t2-t1).seconds)

日付が 2014 年のパラメーターで実行しても、数値が低すぎます。

誰にも洞察がありますか?

4

3 に答える 3

0

次のコードは、指定された 2 つの日付の間の日数を返します。

$daysremaining = ceil(abs(strtotime($yourdate) - strtotime($currentdate)) / 86400);

秒単位で違いを取得するには、次を使用します

$secondsremaining = strtotime($yourdate) - strtotime($currentdate);

役立つ場合は賛成

于 2013-05-01T12:34:55.333 に答える
0

ああ。どうやら .seconds は、1日の範囲内の秒の差のみを返すようです。

.seconds には時間と分の両方が含まれるため、合計秒数を取得するには、それを .days*86400 に追加する必要がありました。

助けてくれてありがとう、みんな!;D

于 2013-05-04T06:41:42.123 に答える