Ruby 4.0 リファレンスマニュアル

singleton method Time.zone_offset

zone_offset(zone, year = self.now.year) -> Integer | nil[permalink][rdoc][edit] [added by time]

タイムゾーンを表す文字列 zone を、協定世界時 (UTC) との差(秒)に変換します。

-10:00+1330 のような分を含む数値表記、-10+13 のような時のみの数値表記に対応しています。

数値表記でない場合は、"UTC""JST" のような、time ライブラリが認識するタイムゾーンの略称も使用できます。

上記のいずれにも一致しなかった場合は、ローカルタイムゾーン(サマータイムを考慮したものと考慮しないものの両方)が zone と一致するかどうかを調べます。 year を指定すると、ローカルタイムゾーンを調べる際に使う年を変更できます。

zone のオフセットを判別できなかった場合は nil を返します。

[PARAM] zone:
タイムゾーンを表す文字列を指定します。
[PARAM] year:
ローカルタイムゾーンの判別に使う年を整数で指定します。省略した場合、現在の年が使われます。
require 'time'
p Time.zone_offset("EST")    # => -18000
p Time.zone_offset("+09:00") # => 32400