Php 使用日期时间

Php 使用日期时间,php,Php,我在约会时间工作。我需要两人约会的年龄。Date1从数据库检索,而date2在今天。下面是代码: while($row= mysqli_fetch_array($query)){ $surname=$row['surname']; $firstname= $row['firstname']; $othername=$row['othername']; $sex= $row['sex']; $regdate= $row['reg_date']; } 这是表

我在约会时间工作。我需要两人约会的年龄。Date1从数据库检索,而date2在今天。下面是代码:

while($row= mysqli_fetch_array($query)){
    $surname=$row['surname'];
    $firstname= $row['firstname'];
    $othername=$row['othername'];
    $sex= $row['sex'];
    $regdate= $row['reg_date'];
}
这是表格显示的代码:

<tr>
    <td>Years in Service</td>
    <td><?php 
    $date1 = new DateTime("Y-m-d");
    $date2 = new DateTime("$regdate");
    $interval = $date1->diff($date2);
    echo  $interval->y . " years, " . $interval->m." months, ".$interval->d." days ";   
    ?></td>
</tr>

服务年限
试试这个:

$date1 = time();
$date2 = strtotime($regdate);
$diff = abs($date2-$date1); // two timestamps
echo 'its '.$diff.' seconds!';
或:


我可以建议您使用优秀的软件包吗?它提供了一些处理日期时间的好工具,包括月、年等

use Carbon\Carbon;

$now              = Carbon::now();
$registrationDate = Carbon::parse($regdate);

// is the user on their registration anniversary?
$anniversary = $now->isBirthday($registrationDate);

// years since registering (rounded down, so 11 months and 30 days = 0 years)
$years = $now->diffInYears($registrationDate);

$row['reg_date']是什么;?你能发布这个变量中的内容吗?谢谢Brandelizer。计算结果是一个很长的秒值。年的转换是什么?比如1672508第一次做$diff/(60*60*24*365)如果你休息了几个月等等…Brandelizer,我通过将结果乘以数字_格式($ageCal*3.1689e-8),得到了转换的解决方案。它非常有效。然而,我用另一种形式提出了另一个问题。具有多个文本字段的窗体。例如字段1:姓氏,字段2:出生日期,字段3:年龄。现在我想让用户提供前两个,为什么页面会在现场自动回显第三个字段。有什么帮助吗???感谢您的帮助。为什么您有年龄字段?你知道这个时代的一切都准备好了!!我不能用这么低的信息回答你的问题……请亚历克斯罗素,当尝试使用碳时,以下是错误:致命错误:在101行的C:\wamp\www\medics\staff\u upgrade.php中找不到“carbon\carbon”类。另外,我希望能够允许用户在一个字段中提供他的出生日期,页面计算他的年龄并在下一个字段中显示,所有这些都是相同的形式。Carbon是第三方库,因此您必须实际将其代码导入到您的项目中。现在大多数人都会使用一个叫做这个的软件,它会处理和依赖关系,并为你设置一个类自动加载器。然而,如果你不想使用Composer,你可以直接得到碳代码和。至于你的第二个问题,你应该把它作为一个新的堆栈溢出问题发布。但是,如果您需要实时进行计算,则需要使用JavaScript来完成此操作,或者使用AJAX发布到PHP并获得结果。FWIW Carbon将很容易让您做到这一点(请参阅上面我的代码,最后一行),但如果您需要它来完成页面上的所有工作,您应该寻找一个JS解决方案来解决您的问题,也许?你会发现作品有点像碳,这是允许的。