-3

私はここが初めてで、PHP の知識がありません。とにかく、XML フィード プロバイダーから自動的に更新されたスポーツの試合のライブ スコア データを表示する Web サイトがあります。問題は、午前 12 時に「今日の試合」が更新されるはずなのに、代わりに午後 11 時に更新されることです。別の方法では、昨日の試合を翌日の午後 11 時まで表示し、現在の更新時間の 11 時間前に更新したいと考えています。これはコードです:

<?php
    ob_start();
    include('header.php');
    $flagged1 = 0;
    $flagged2 = 0;
    if (isset($_GET["date"]) and $_GET["date"] != "")
    {
        $dtShow = $_GET["date"];
        if ($dtShow == "tomorrow")
        {
            $yest = date("y-m-d", time() + (60 * 60 * 48));
            $time = date("y-m-d", time() + (60 * 60 * 24));
        }
        else if ($dtShow == "yest")
        {
            $yest = date("y-m-d", time());
            $time = date("y-m-d", time() - (60 * 60 * 24));
        }
        else
        {
            $yest = $_GET["date"]." 00:00:00";
            $newDate = strtotime($yest);
            $yest = date('y-m-d', $newDate);
            $time = date("y-m-d", $newDate - (60 * 60 * 24));
        }
    }
    else
    {
        $yest = date("y-m-d", time() + (60 * 60 * 24));
        $time = date("y-m-d", time());
    }
?>

注: より具体的に言うと、このサイトは Dreamhost (米国時間) によってホストされており、私の現地時間は UTC +3 です。どんな助けでも本当に感謝します。

ありがとう!

4

1 に答える 1

2

サーバー構成が一致しない場合は、ニーズのタイムゾーンを適用します(通常、サーバー設定が変更されたときに問題を回避するために必要な設定を常に適用することをお勧めします)。date_default_timezone_set()date_timezone_set ()のような関数がおそらく必要なすべてです。

ところで:「USA時間」?そのようなことはありません。

于 2013-03-07T00:43:04.087 に答える