В каком году мне будет 20000 дней - PullRequest
0 голосов
/ 25 ноября 2018

У меня есть php-скрипт

if (isset($_POST['getdays'])) {

    $birthday = $_POST['daysalive'];

    $now = date("Y-m-d");

    $days_alive = date_diff(date_create($birthday), date_create($now));

}

, который возвращает мне количество дней, в течение которых пользователь живет, повторяя:

$days_alive->format('%a days old');

<input name="daysalive" type="text" class="mt-3" placeholder="12-12-2018">
<button name="getdays" class="btn btn-primary mt-3" type="submit">Check in what year you will be 20000 days old</button>

Что я хотел бы сделать, это взять этот ввод иопределить, в каком году пользователю будет 20000 дней.Я думал о циклическом прохождении $days_alive с использованием цикла for() с оператором if, подобным этому:

if($days_alive + 365 >= 20000) {
    echo(date('Y');
}

какие-нибудь мысли?

Ответы [ 2 ]

0 голосов
/ 25 ноября 2018

Нет необходимости в петлях.Вы можете использовать strtotime или DateTime для его вычисления.

$birthday = "1975-01-01";
$res = strtotime($birthday . " + 20000 days");
echo date("Y-m-d", $res); //2029-10-04
0 голосов
/ 25 ноября 2018

PHP имеет функцию date_add, которая позволяет добавлять DateInterval к DateTime объекту.Так что вам просто нужно добавить DateInterval из 20000 дней примерно так:

date_add(date_create($birthday), new DateInterval('P20000D'));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...