2011-01-16 17 views
0

以前のjavascriptと隠しテキストフィールドに出力される日付があります。複数の出力されたカレンダー形式を変更する

私はそれを別のフォーマット(dd/mm/yyyy)に変換する必要があり、それを行う方法はあまりよく分かりません。

値は動的なので、いくらあるかわからないので、ループを実行する必要があると思いますか?

私はこの

Wed Jan 19 2011 00:00:00 GMT+1100 (EST),Thu Jan 20 2011 00:00:00 GMT+1100 (EST),Fri Jan 21 2011 00:00:00 GMT+1100 (EST),Sat Jan 22 2011 00:00:00 GMT+1100 (EST),Sun Jan 23 2011 00:00:00 GMT+1100 (EST) 

19/01/2011,20/01/2011,21/01/2011,22/01/2011,23/01/2011 

にすべてのヘルプは素晴らしいことだ変換する必要があります。

おかげで、また

答えて

4
$str = 'Wed Jan 19 2011 00:00:00 GMT+1100 (EST),Thu Jan 20 2011 00:00:00 GMT+1100 (EST),Fri Jan 21 2011 00:00:00 GMT+1100 (EST),Sat Jan 22 2011 00:00:00 GMT+1100 (EST),Sun Jan 23 2011 00:00:00 GMT+1100 (EST)'; 

$dates = explode(',', $str); 
$result = array(); 
foreach ($dates as $date) { 
    $result[] = date('d/m/Y', strtotime($date)); 
} 
echo implode(',', $result); 

、このコードは、ローカルタイムゾーンに依存することに注意してください。だからあなたのタイムゾーンがGMT+11でない場合、あなたは一例

+0

素晴らしいヒープ – Cecil

1
<?php 
echo date('d/m/Y', strtotime("Wed Jan 19 2011 00:00:00 GMT+1100 (EST)")); 
0

ためdate_default_timezone_set('Australia/Canberra');でそれを変更することができますあなたはそれをexplode、その後strtotime機能を使用する必要があります。 GMTにcovertedとき、実際には '表示していました私は英国とこの時間にいるよ -

1

あなたはstrtotime時間を変換するために、システムのタイムゾーンを使用することが、この

$str='Wed Jan 19 2011 00:00:00 GMT+1100 (EST)'; 
$t=strtotime($str); 
echo strftime('%d/%m/%Y', $t); 

ノートのような何かを行うことができます18/01/2011 '知っているだけのこと!マニュアルから: システムの設定やTZを使用した場合の時間 ゾーンが有効ではありません、および/またはE_STRICT またはE_WARNINGメッセージ場合

日付/時刻関数 へのすべての呼び出しはE_NOTICEを生成します。環境変数 。他を参照してください date_default_timezone_set()

関連する問題