0

PHPコードに日付の問題があります。私のコードは次のようなものです:

$add_remind ="15/03/2013";
$add_time = "03:00";
$add_remind_on =$add_remind." ".$add_time.":00"; 
$formated_add_remind_on = date('Y-m-d',strtotime($add_remind_on));

しかし、私が印刷する$formated_add_remind_onと、それは印刷1970-01-01 05:30:00です。エラーがどこにあるか教えていただけますか?

前もって感謝します。

4

3 に答える 3

2
$add_remind ="2013-03-15";
$add_time = "03:00";
$add_remind_on =$add_remind." ".$add_time.":00"; 
$formated_add_remind_on = date('Y-m-d',strtotime($add_remind_on));

strtotime はこの形式を受け入れません:15/03/2013

于 2013-03-08T10:20:22.690 に答える
1

あなたの日付形式はサポートされていないようです。サポートされていて、「xx/xx/xxxx」のように見える唯一の日付形式アメリカの日付ですが、月の最初のセグメントを使用し、15 は有効な月ではありません。

入力を変換するか、入力の形式を指定できるDateTime::createFromFormatstrptimeなどを使用する必要がある場合があります (DateTime オブジェクトには、非グローバル タイムゾーン サポートなどの他の利点もあります)。

フォーマットは次のようになります (UTC を作成したタイムスタンプのタイムゾーンに変更することをお勧めします):

$d = DateTime::createFromFormat("d/m/Y H:i:s", "15/03/2013 03:00:00", new DateTimeZone('UTC'));
于 2013-03-08T10:23:49.363 に答える
0

strtotimeは英語の日付形式のみを受け入れます。これを機能させるには、日付を MM/DD/YYYY にする必要があります。

于 2013-03-08T10:22:06.923 に答える