1

私は時間形式を持っています:

$start_time; (example: 1:30 PM)
$system_time; (example: 8:20 AM)        
echo $time_left_for_discussion = $start_time - $system_time;

$start_time - $system_time を減算したい。しかし、正しい結果が表示されません。

この種の時間の減算をどのように処理できますか?

4

4 に答える 4

2

DateTime::createFromFormat()両方の時間で使用し、それらを減算します。

$TimeStart = DateTime::createFromFormat( 'g:i A', $start_time );
$TimeEnd = DateTime::createFromFormat( 'g:i A', $end_time );

$Interval = $TimeStart->diff( $TimeEnd );
$time_left = $Interval->h . 'h' . $Interval->m 'm';
于 2013-03-28T08:33:33.213 に答える
2
<?php
  $d1 = strtotime('1:30 PM');
  $d2 = strtotime('8:20 AM');
   $diff = abs($d1-$d2);

  echo "Difference is $diff secs";

?>
于 2013-03-28T08:38:25.163 に答える
1

date()およびstrtotime()関数を見たいと思うでしょう。

このような場合に対処する方法は、日付をUNIX タイムスタンプに変換し、あるタイムスタンプを別のタイムスタンプから減算し、結果のタイムスタンプから日付文字列を再作成することです。

注: time()関数は現在のシステム時刻を返します (-stamp)

于 2013-03-28T08:32:57.393 に答える
1

このhttp://php.net/manual/en/function.strtotime.phpをご覧になることをお勧めしますか

これは時々文字列で、非常に便利です。

良い一日を:D

于 2013-03-28T08:33:06.527 に答える