1

PHP上に構築されたアプリケーションがあります。アプリケーションでは、適切なタイムゾーンを選択するオプションを指定し、すべてのタイムゾーンについて、関連するphpタイムゾーン識別子(ここで指定)をデータベースに保存しました。

現在、そのアプリケーションに関連するすべてのバックエンドプロセスをRubyに移行していますが、現在直面している問題は、php形式で保存されているタイムゾーンをどのように処理するかです。ルビーでそれらを使用する方法は?phpタイムゾーン形式をrubyに変換できるlibrary/gemはありますか?date_default_timezone_setのようなphpと同様の方法はありますか?

4

1 に答える 1

0

Andrewが提案したように、最善のオプションは、可能であればPHPのタイムゾーンを完全に取り除くことです。次善の策は、PHPゾーンからActiveSupportゾーン名のようなものへのマッピングを作成することです。

これを使用して、マッピングに役立てることができます:http:
//api.rubyonrails.org/classes/ActiveSupport/TimeZone.html

PHP間で直接一致しないマッピングのActiveSupport::TimeZone場合、手動でマッピングを作成する必要があります。ただし、PHP仕様にはそもそもそれほど多くのゾーンがないため、適切なマッピングはそれほど手間がかからないはずです。

編集

ActiveSupportRubyアプリケーションに個別に含めることができます。gemを個別にインストールすることもできます(gem install activesupport)。Railsアプリケーションを使用する必要はありません。

ただし、Railsに関連していない類似したものを使用したい場合は、TZInfoライブラリ を確認できます。

http://tzinfo.rubyforge.org/
http://tzinfo.rubyforge.org/doc/

PHPタイムゾーンとRubyゾーンの間で変換するための標準的なソリューションはありません。Rubyに移行する場合は、すべてをTZInfo型データへの変換を開始します。

于 2012-05-15T06:47:10.790 に答える