PHP
 Computer >> コンピューター >  >> プログラミング >> PHP

PHPのtimezone_offset_get()関数とは?使い方と具体例をわかりやすく解説

timezone_offset_get()関数は、指定したタイムゾーンにおけるGMT(グリニッジ標準時)からのオフセット(時差)を取得するためのPHP関数です。特定の日時を基準にしてタイムゾーン間の時差を秒単位で計算できるため、国際化対応のアプリケーションなどで活用されます。

構文

timezone_offset_get(obj, datetime)

パラメータ

  • obj − オフセットを取得したいタイムゾーンを表す DateTimeZone オブジェクトを指定します。

  • datetime − オフセットの計算基準となる日付・時刻を含む DateTime オブジェクトを指定します。サマータイム(DST)の適用有無は、この日時に応じて判定されます。

戻り値

成功した場合、GMTからのタイムゾーンオフセットを秒単位の整数値で返します。失敗した場合は FALSE を返します。

使用例

次の例では、「America/Chicago」のタイムゾーンに対して、「Europe/Amsterdam」の現在日時を基準としたオフセットを取得しています。

<?php
   $tz = timezone_open("America/Chicago");
   $datetime = date_create("now", timezone_open("Europe/Amsterdam"));
   echo timezone_offset_get($tz, $datetime);
?>

出力

-18000

出力結果の解説

この例では「-18000」が出力されます。-18000秒は-5時間に相当し、アメリカのシカゴ(中部標準時:CST)がUTCより5時間遅れていることを示しています。

補足ポイント

  • この関数はオブジェクト指向スタイルでは DateTimeZone::getOffset() としても利用できます。

  • オフセットは固定値ではなく、指定した datetime の日時に応じて変動します。サマータイムが採用されている地域では、夏と冬で異なる結果が返される点に注意してください。

  • 返り値は秒単位のため、時間に変換する場合は3600で割ると便利です。

  1. PHPのlog()関数とは?自然対数の計算方法と使い方を解説

    定義と使い方log() 関数は、数値の自然対数(natural logarithm)を計算します。対数とは、指数関数の逆演算のことです。たとえば 102=100 という関係は「log10100=2」と表せます。自然対数はオイラー数 e を底として計算され、PHP では定義済み定数 M_E によって e の値(2.7182818284590452354)が提供されています。具体例を挙げると、exp(4.60517018599)=100(つまり e4.60517018599=100)が成り立つため、loge100=4.60517018599 となります。PHP では、この自然対数(loge)を l

  2. PHPのfseek()関数とは?使い方とパラメータをわかりやすく解説

    fseek()関数は、fopen()で開いたファイルの読み書き位置(ファイルポインタ)を任意の場所へ移動させるための関数です。成功した場合は0を、失敗した場合は-1を返します。構文fseek(file_pointer, offset, whence)パラメータfile_pointer − fopen()を使って作成したファイルポインタを指定します。必須の引数です。offset − 移動先の新しい位置をバイト数で指定します。必須の引数です。whence − 移動の基準となる位置を指定します。指定できる値は以下の3種類です。SEEK_SET − ファイルの先頭からoffsetバイトの位置に移動しま