PHP中的错误计算日期,小时和分钟? [重复]

问题描述 投票:1回答:2

这个问题在这里已有答案:

我的问题是我遇到了问题

注意:尝试在第22行的C:\ xampp \ htdocs \ ex2.php中获取非对象的属性'7444'

几天过去了。所以它计算时间,日等,但它不想显示在我的页面上。

          <html>
          <link rel="stylesheet" href="8ex2.css">
          <body>
          <div class="inside">
          Welcome <?php echo $_POST["name"]; ?><br>

          Your Birthday is: <?php echo $_POST["dob"]; ?><br>

          <?php
              $date = $_POST["dob"];
              $now = time();
              $birthDay = strtotime($date);

              $newBDate = date("d-M-Y", strtotime($date));

              $todaysDate=getdate();
              $difference = $now - $birthDay;
              $minutes = floor($difference/ (60));
              $hours = floor($difference/ (60*60));
              $days = floor($difference / (60*60*24));
              $weeks = floor($difference / (60*60*24*7));

              echo $difference->$days.' days have passed.<br>';
              echo $difference->$hours.' hours have passed.<br>';
              echo $difference->$minutes.' minutes have passed.<br>';

                ?>
          </div>
          </body>
          </html>

我不明白我的PHP中有什么错误?

php html
2个回答
2
投票

为什么$difference->$days?该变量称为$days

做就是了

echo $days.' days have passed.<br>';
echo $hours.' hours have passed.<br>';
echo $minutes.' minutes have passed.<br>';

0
投票

你可以在这里使用DateInterval类的原生DateTime

// Create the initial date object
$datetime1 = new DateTime($_POST["dob"]);

// Compare it to now
$interval = $datetime1->diff(new DateTime());

$result = [
    'days' => $interval->days,
    'hours' => $interval -> days * 60 + $interval->h,
    'minutes' => $interval -> days * 60 + $interval->h * 24 + $interval->m
];
© www.soinside.com 2019 - 2024. All rights reserved.