Как вычитать минуты

Я хочу отправить напоминание по электронной почте. Я не хочу использовать cron для Linux/Unix/BSD или для запланированных задач в Windows.

Я пытаюсь вычесть 15 минут с текущего времени.

вот мой код до сих пор (не работает):

$days   = date("j",time());
$months = date("n",time());
$years  = date("Y",time());
$hours  = date("G",time());
$mins   = (date("i",time()));
$secs   = date("s",time());
$mins   = $mins-15;

Ответы

Ответ 1

Измените дату на метку времени (в секундах), затем минус 15 минут (в секундах), а затем конвертируйте обратно в дату:

$date = date("Y-m-d H:i:s");
$time = strtotime($date);
$time = $time - (15 * 60);
$date = date("Y-m-d H:i:s", $time);

Ответ 2

Чтобы вычесть 15 минут с текущего времени, вы можете использовать strtotime():

$newTime = strtotime('-15 minutes');
echo date('Y-m-d H:i:s', $newTime);

Ответ 3

Вы можете использовать DateInterval

$date = new DateTime();
$interval = new DateInterval("PT15M");
$interval->invert = 1;
$date->add($interval);
echo $date->format("c") . "\n";

Ответ 4

вы также можете попробовать это,

$dateTimeMinutesAgo = new DateTime("15 minutes ago");
$dateTimeMinutesAgo = $dateTimeMinutesAgo->format("Y-m-d H:i:s");

Ответ 5

Как насчет вычитания 15 минут с момента времени() перед его преобразованием?

$time = time() - (15 * 60);

И затем используйте вместо time() в вашем коде.

Ответ 6

$currentTime = date('Y-m-d H:i:s');
$before15mins = strtotime('-15 minutes');
echo date('Y-m-d H:i:s', $before15mins);

Ответ 7

Ниже приводится способ добавления дней/часов/минут/сек к текущему времени.

  $addInterval = date('Y-m-d H:i:s', strtotime("+$days days $hours hours $minute minute $sec second", strtotime(currentTime)));

Ответ 8

Попробуйте использовать

$min = time() - 900; //900 seconds = 15 minutes 

Ответ 9

Вы также можете использовать объект DateInterval

<?php
    $date = new DateTime('Y-m-d H:i:s');
    $date->sub(new DateInterval('PT10H30S'));
    echo $date->format('Y-m-d H:i:s');?>

Ответ 10

//To Get Current DateTime
$currentDate = date("Y-m-d H:i:s");

//To Get Current DateTime - 15Min
$oldDate = date("Y-m-d H:i:s", strtotime($currentDate) - (15 * 60));

echo $currentDate;
echo $oldDate;