产品在PHP中以天,月和年为单位的ETA

时间:2013-04-04 07:38:27

标签: php product

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

我的PHP脚本如下:

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

然后这就是我要存档的内容     如果$ diff< 30天后“30天内”

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个月”

请帮助,我没有PHP大师

1 个答案:

答案 0 :(得分:0)

这应该让你朝着正确的方向前进。你需要自己设计ifelseif或switch的逻辑,你应该能够处理它。

$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';
}