-5

我正在为我们的产品页面制作产品预计到达时间 (ETA),但我很难让这个想法发挥作用。

我的 PHP 脚本如下:

$now = new DateTime(date("y:m:j",time()));
$eta = new DateTime($row['ArrivalDate']);
$diff = $now->diff($eta);

那么这就是我要归档的内容 If $diff < 30 days then out “within “30 days”</p>

If $diff = or > 60days then output “2 months”

If $diff = or > 90 days then output “3 months”

If $diff > 365 days then output “over a year”

If $diff = 25 December  then output “Date to be confirmed”

在 ETA 列中,我想将 ETA 显示为“2 个月”</p>

请帮忙,我不是 PHP 大师

4

1 回答 1

0

这应该让你朝着正确的方向前进。您将需要自己制定 ifelseif 或开关的逻辑,您应该能够处理它。

$ArrivalDate = '2013-05-21';


$now = new DateTime("now");
$eta = new DateTime($ArrivalDate);
$diff = $now->diff($eta);
//
$diffDays = $diff->format('%d');
$diffMonths = $diff->format('%m');
$diffYears = $diff->format('%y');


if ( $diffYears !='0' )
{
    echo 'over a year';
}
if ( $diffDays < '31' )
{
    echo 'within the next 30 days (' . $diffDays . '  days)';
}
if ( $diffMonths >= '1' )
{
    echo 'within ' . $diffMonths . ' months';
}
于 2013-04-04T08:17:43.477 回答