0

ユーザーのタイムゾーン設定に従ってタイムスタンプを記録するにはどうすればよいですか?例えばCodeigniterを設定するユーザーのタイムゾーン設定

  1. ユーザーは$ my_tz = "UP3" とタイムゾーンの設定を持っています。
  2. ユーザは、アイテムの期限を$ time_to_set = "2017-05-31 03:15 PM"と設定します。
  3. タイムゾーンに応じて時間を適切に変換するには、たとえばタイムゾーンの設定が異なるユーザーが必要です(USER 1:UP3、USER 2:UP8など)。彼らは時間を正しく見なければならない。私は設定しようとしましたが、オフセットに+1時間差があり、正確ではありません。
  4. タイムゾーン(UP3)に設定されている時間が+1時間外に出ることなく(UTC)ベースに変換されるのに必要な時間です。

ありがとうございました!

ここで私のコードは、私が何を意味するかをテストすることができます。

$my_tz = "UP3"; 
    $utc_time = local_to_gmt(time()); 
    $current_time = gmt_to_local($utc_time, $my_tz, FALSE); 

    echo "Current Time: ".unix_to_human($current_time)."</br>"; 
    echo $current_time; 
    echo "</br></br></br></br>"; 

    $time_to_set = "2017-05-31 03:15 PM"; 
    $time_set_unix = human_to_unix($time_to_set); 
    $time_to_normal = local_to_gmt($time_set_unix, "UP8", FALSE); 

    echo $time_to_set."</br>"; 
    echo $time_set_unix."</br>"; 
    echo $time_to_normal."</br>"; 
    echo unix_to_human($time_to_normal)."</br>"; 
+0

ユーザーごとのタイムゾーンとして設定する必要がある場合は、国を基準にした場所を使用する必要があります。完全なタイムゾーンを取得する必要がある場合は、ここをクリックしてyou.https://github.com/maxmind/geoip -api-php/blob/master/src/timezone.php – Astound

+0

はい、これははるかに優れています。 –

答えて

0

私は私の問題を解決しました。私はCI Date Helperを捨て、デフォルトのPHPを選択しました。試行錯誤を経て実際の時間からずっとオフセットを得るよりもはるかに優れています。

@ astoundの回答もこれで助けてくれました。

+0

ありがとう、ありがとうコメントをアップしていただきありがとうございます – Astound

関連する問題