0

この関数はしばらくの間私を困惑させてきました.foreachステートメントを機能させることができません。両方のケースが機能TodayYesterdayます。yearmonthday

function time_decider($timestamp){

$date = date('m/d/Y', $timestamp);
$dif_date = date('m/d/Y',time() - (24 * 60 * 60));

$a = array( 12 * 30 * 24 * 60 * 60  =>  'year',
                30 * 24 * 60 * 60       =>  'month',
                24 * 60 * 60            =>  'day',
                );

switch ($date) {
    case date('m/d/Y'):
        return "Today";
        break;
    case $dif_date:
        return "Yesterday";
        break;
    default:

        foreach ($a as $secs => $str) {
            $d = $etime / $secs;
            if ($d >= 1) {
                $r = round($d);
                return $r . ' ' . $str . ($r > 1 ? 's ago' : '');
                break;
            }
        }
     }
  }
4

1 に答える 1

1

定義されていないため、現在の関数では$d常にゼロになります$etime

于 2012-11-19T02:58:57.760 に答える