【问题标题】:I am trying to add a time variable to this PHP code and it is not working我正在尝试向此 PHP 代码添加一个时间变量,但它不起作用
【发布时间】:2020-09-11 03:22:32
【问题描述】:

在下面的代码中,我试图根据用户帐户的活动时间返回不同的结果。如果他们的帐户是一天或更早/返回 you_upgraded 但如果少于 1 天/返回 you_upgraded。我对 PHP 很陌生,所以请善待 :)

<?php 
$acct_type = $db['user']['acct_type']; 
$type_name = $user_acct_type['type_name'];
$now = new \DateTime();
$join = $db['user']['date_joined']; 
$time = ($now - $joined);
if($acct_type == 1 OR $acct_type == 2 OR $acct_type == 3) && ($time -> days => 1){?>
<h3><?php echo $db['lang']['you_upgraded'];?></h3>
<?php }else{?>
<h3><?php echo $db['lang']['under_review'];?></h3>
<?php }?>

【问题讨论】:

    标签: php function date


    【解决方案1】:

    你可以做这样的事情来获得天数:

    <?php
    $today = new Datetime();
    
    //assuming database date
    $dbdate = new Datetime('2020-08-20');
    $diff = $today->diff($dbdate);
    $days= $diff->days;
    
    ?>
    

    【讨论】:

    • 我认为它正在接近。我不确定 $dbdate = new Datetime('2020-08-20') 是否有效,因为每个帐户都有不同的日期。我需要从数据库中提取 $dbdate。
    • 不,我假设了日期,因为没有提到日期,所以用你的数据库日期替换它,这就是我的意思,在你的情况下是 $join
    • 我试着把 $dbdate=$db['user']['date_joined'];但它没有用。可能是因为 db 中的数据格式是 Y-m-d H:i:s 而 $today 只是 Y-m-d?
    • 我确实尝试过。我把这个... date_format($dbdate, "Y-m-d") 但它错误.....对不起。我对 PHP 不是很好:(
    • 你可以试试$dbdate=new Datetime($db['user']['date_joined']);$actual=$dbdate-&gt;format('Y-m-d');
    猜你喜欢
    • 1970-01-01
    • 2015-01-15
    • 2021-10-05
    • 1970-01-01
    • 2015-10-22
    • 2022-11-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多