-3

UNIXタイムスタンプを、今からそのタイムスタンプまでの残り時間に変換する方法を知る必要があります。残り時間が 1 日である場合は 1 日を表示する必要があり、15 分である場合は %dMin を週、時間、年、月などで表示します。

現在私は使用しています

$realtime = strftime("%B %d %Y %r",1295058844);
4

2 に答える 2

1

PHPのDateTimeクラスを使用すると、これを非常に簡単に行うことができます。-

$futureDate = new DateTime('3rd April 2014');

または

$futureDate = new DateTime();
$futureDate->setTimestamp(1295058844);

あなたはその考えを理解します。

$now = new DateTime();
$diff = $futureDate->diff($now);

これにより、DateIntervalオブジェクトが提供されます:-

var_dump($diff);

object(DateInterval)[3]
  public 'y' => int 1
  public 'm' => int 3
  public 'd' => int 0
  public 'h' => int 9
  public 'i' => int 8
  public 's' => int 58
  public 'invert' => int 1
  public 'days' => int 455

次に、次のようなことを行うことができます:-

echo "Time left = {$diff->y} years, {$diff->m} months, {$diff->d} days, {$diff->h} hours, {$diff->i} minutes, {$diff->s} seconds";

与える:-

残り時間=1年、3か月、0日、9時間、8分、58秒

于 2013-01-02T15:02:57.770 に答える
1

まず、現在のタイムスタンプ(time()によって返される)の差を取得します。

$timestamp = 1295058844;

$diff = time() - $timestamp;

次に、結果を日/時間/分などにフォーマットする関数を記述します。たとえば、$ diffを1日を構成する秒数で割ると、日数を取得できます。

$days = floor($diff / (60 * 60 * 24));

60秒*60分*24時間。その数は決して変わらないので、あなたはただ書くことができます:

$days = floor($diff / 86400);

残りの秒数を取得し、時間、分などの数を計算します。

于 2013-01-02T14:36:02.920 に答える