1

開始日と終了日があるとしましょう

 if (isset($_POST['start_date']))
    $_POST['start_date'] = gmdate('Y-m-d H:i:s', strtotime($_POST['start_date']));

 if (isset($_POST['end_date']))
    $_POST['end_date'] = gmdate('Y-m-d H:i:s', strtotime($_POST['end_date']));

$_POST['end_date'] - $_POST['start_date']有効期限を秒単位で教えてくれますか?

4

2 に答える 2

3

いいえ、有効期限を秒単位で取得するには、strtotime()を使用します。

$expired = strtotime($_POST['end_date'])-strtotime($_POST['start_date']);

if (isset($_POST['start_date']))
    $_POST['start_date'] = gmdate('Y-m-d H:i:s', strtotime($_POST['start_date']));

if (isset($_POST['end_date']))
    $_POST['end_date'] = gmdate('Y-m-d H:i:s', strtotime($_POST['end_date']));

if (isset($_POST['start_date']) && isset($_POST['end_date'])) echo 'Expired time in seconds: ' . $expired;
于 2012-09-16T18:46:30.483 に答える
-1

mktime関数を使用して、ミリ秒単位の日付リテラルから UNIX タイムスタンプを取得することをお勧めします。

$startDate = mktime($hour, $minute, $second, $month, $day, $year);
$endDate = mktime($hour, $minute, $second, $month, $day, $year);

$diffInSeconds = ($endDate - $startDate) / 1000; // 1 second = 1000 miliseconds
于 2012-09-16T18:45:37.417 に答える