Wie überprüfe ich die Zeit zwischen zwei Datumsvariablen in PHP?
P粉831310404
P粉831310404 2023-08-16 13:21:21
0
1
583
<p>Ich habe 3 Variablen, die 3 Zahlen sind (Tag, Jahr, Monat). Zusammen werden sie zu einer Variablen vom Typ Datum. Zusätzlich habe ich eine Datumsvariable, die das aktuelle Datum darstellt. </p> <p>Wie kann ich überprüfen, ob das erste Datum 13 Jahre oder mehr vor dem aktuellen Datum liegt? Hier ist mein Code: </p> <pre class="brush:php;toolbar:false;">$usersday = (int)$_POST['day']; $usersyear = (int)$_POST['year']; $usersmonth = (int)$_POST['month']; $takedate = date_create("$usersyear-$usersmonth-$usersday"); $date = date_format($takedate, 'd-m-Y'); $currentDate = date('Y-m-d');</pre> <p><br /></p>
P粉831310404
P粉831310404

Antworte allen(1)
P粉787934476

date_*()函数和date()是两个不同的日期库API的一部分,令人困惑的是。面向对象版本的date_*()函数在一定程度上澄清了这一点,同时也是一个更强大的库。例如:

$usersyear = 2001;
$usersmonth = 1;
$usersday = 1;

$takedate = new DateTime("$usersyear-$usersmonth-$usersday");
$today    = new DateTime('today');
$diff     = $today->diff($takedate);

var_dump($diff, $diff->y);

输出:

object(DateInterval)#3 (10) {
  ["y"]=>
  int(22)
  ["m"]=>
  int(7)
  ["d"]=>
  int(15)
  ["h"]=>
  int(0)
  ["i"]=>
  int(0)
  ["s"]=>
  int(0)
  ["f"]=>
  float(0)
  ["invert"]=>
  int(1)
  ["days"]=>
  int(8262)
  ["from_string"]=>
  bool(false)
}
int(22)

参考:https://www.php.net/manual/en/book.datetime.php

Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage