Php 输出时间-日期时间条目 相关的:

Php 输出时间-日期时间条目 相关的:,php,mysql,date,time,Php,Mysql,Date,Time,这是我先前问题的延续 它正在做: 珍妮丝(2009-08-05 14:02:01) 请告知?您正在循环外执行计算。将其移动到循环内,如下所示: $result = mysql_query("SELECT `code`,`datetime` FROM `fc` ORDER by datetime desc LIMIT 25") or die(mysql_error()); $output = ""; while ($fetch_array = mysql_fetch_array($result)

这是我先前问题的延续

它正在做: 珍妮丝(2009-08-05 14:02:01)


请告知?

您正在循环外执行计算。将其移动到循环内,如下所示:

$result = mysql_query("SELECT `code`,`datetime` FROM `fc` ORDER by datetime desc LIMIT 25") or die(mysql_error());
$output = "";

while ($fetch_array = mysql_fetch_array($result))
{
    $code = htmlentities($fetch_array["code"]);

    $seconds = time() - strtotime($fetch_array["datetime"]);
    if($seconds < 60)
        $interval = "$seconds seconds";
    else if($seconds < 3600)
        $interval = floor($seconds / 60) . " minutes";
    else if($seconds < 86400)
        $interval = floor($seconds / 3600) . " hours";
    else
        $interval = floor($seconds / 86400) . " days";

    $output .= "<li><a href=\"http://www.***.com/?code=" . urlencode($code) . "\" target=\"_blank\">$code</a> ($interval) </li>";
}

return $output;
$result=mysql\u query(“从`fc`ORDER by datetime desc LIMIT 25中选择`code`,`datetime`”)或die(mysql\u error());
$output=“”;
而($fetch\u array=mysql\u fetch\u array($result))
{
$code=htmlentities($fetch_数组[“code”]);
$seconds=time()-strottime($fetch_数组[“datetime”]);
如果($s<60)
$interval=“$seconds-seconds”;
否则如果($s<3600)
$interval=floor($s/60)。“分钟”;
否则如果($s<86400)
$interval=floor($seconds/3600)。“小时”;
其他的
$interval=floor(秒/86400)。“天”;
$output.=“
  • ($interval)
  • ”; } 返回$output;
    非常糟糕的风格!特别是对于几个嵌套的
    if..else
    ,绝对{使用括号}!
    LINK (5 Seconds Ago)
    LINK (1 Minute Ago)
    etc.
    
    $result = mysql_query("SELECT `code`,`datetime` FROM `fc` ORDER by datetime desc LIMIT 25") or die(mysql_error());
    $output = "";
    
    while ($fetch_array = mysql_fetch_array($result))
    {
        $code = htmlentities($fetch_array["code"]);
    
        $seconds = time() - strtotime($fetch_array["datetime"]);
        if($seconds < 60)
            $interval = "$seconds seconds";
        else if($seconds < 3600)
            $interval = floor($seconds / 60) . " minutes";
        else if($seconds < 86400)
            $interval = floor($seconds / 3600) . " hours";
        else
            $interval = floor($seconds / 86400) . " days";
    
        $output .= "<li><a href=\"http://www.***.com/?code=" . urlencode($code) . "\" target=\"_blank\">$code</a> ($interval) </li>";
    }
    
    return $output;