2011-07-19 13 views
0

含まれているもの(小、中、フル)以外に独自の日付パターンを指定する方法はありますか?ここでの主なポイントは、i18nで動作することです。 Yiiカスタム日付形式(パターン)

Yii::app()->dateFormatter->format("l d/m/Y",$slide->date_start); 

は、私は約 strftimeを知っているが、ここでの問題は別のホスティングプロバイダが異なるロケール文字列を使用することで...、あなたが持っている...私は物事のカップルを試みたが、私はそれを動作させることができませんでしたそれをカスタマイズするには...

私はこれを行うためのエレガントな方法を探しています。

私は l d/m/Y形式で日付を表示したいのですが

...

更新: 私はちょうどdateFormatterは、標準のPHPの日付書式を使用していないことがわかってきました...気にしないで...

答えて

0

タイムゾーン&の日付形式はプレゼンテーションレイヤの問題であるため、時間を測定するのはUnix Timeだと思います。 Unixの時刻は常にUTC &です。これは単一の数値なので、コードを渡すのが簡単です。

「ホスティングプロバイダは異なるロケール文字列を使用しています」という問題は、それに応じてユーザーに彼のタイムゾーン&を尋ねるだけです。推測しようとするよりもはるかに誤差が少なくなります。

日付の書式については

は、見てYIIのformat()

が、それはここでは、あなたの質問

+0

私は私の更新で言ったように、正しい形式は、標準のphpと少し違う 'EEEE、d/M/yyyy'です... – Mission

+0

はい、YiiはUnicodeの方法に従うようです;) – CuriousMind

0

に答える関連yii forum discussion

のYiiフォーラムソリューションは、まだ生のSQL NOW()文を避けるために、私のために働いたが、願っていますPHP date()およびtime()関数を使用して、データベースに適した日付文字列を生成します。

... 
'params'=>array(
    'mysqlDateTimeFormat' => 'Y-m-d H:i:s', # ':u' adds microsecond precision, 
... 

その後、あなたはモデルフィールドの使用は明らか

$myModel->myDate = date(Yii::app()->params['mysqlDateTimeFormat']); 

日付を入力することができますに日付・時刻文字列を入れたい場所に:保護/設定/ main.phpで

あなたの望むならば、日付/時間フォーマットを日付(または時刻)関数に直接組み込むことができます。