2011-12-18 15 views
0

私はさまざまな形式で日付が入力されたスクリプトを用意しています。strtotimeはmm-dd-yyyyと連携していません

これらの日付をタイムスタンプとして保存して、簡単に操作/順序付けできるようにしたいと思います。

mm-dd-yyyyタイプの日付をタイムスタンプに変換しようとすると失敗します。

スクリプトが実行されるとき、どの形式が供給されるかわからないため、これを指定することはできません。日付の他のすべての形式の近くでは、変換されたようです。

これを修正する方法を教えてもらえますか?または、代わりに、すべての日付形式を操作可能な注文可能な一貫した形式に変換する方法を教えてください。

多くのおかげ

+3

いくつかのコードを表示してください –

+0

表示するコードはありません..理論的な質問です。なぜmm-dd-yyyyフォーマットはstrtotimeで動作しないのですか?日付を任意のフォーマットで単一の操作可能なフォーマットに変換する方法はありますか? –

+0

私は問題は 'dd-mm-yyyy'フォーマットもあり、2つは区別できないということです。私はここに重複していると思います: –

答えて

7

それはDD-MM-YYYYおよびYYYY/MM/DDとして/としてそれらに-との文字列を見ています。

参考文献questionおよびcomments on the documentationも参照してください。

考えられる解決策/回避策:

  • PHP 5.3で、どちらも使用できない場合strptime
  • を使用し、Windows上の古いPHPやないでdate_create_from_format
  • を使用し、どちらか/-を置き換えますリンクされた質問を通して見つけることができると示唆している正規表現の1つを使用してください。

しかし、しばらくの間、フォーマットの開始点を知る必要があります。コンピュータは心配する人ではありません。あなたが区別しない場合、重複範囲(mmとdd < = 12)でmm-dd-yyyyとdd-mm-yyyyを区別することはできませんし、決してできません。

+0

ありがとうございますリンク。これに基づいてmm-dd-yyyy形式とdd-mm-yyyy形式の両方の日付を単一の操作可能な形式に変換する統一的な方法はありますか? –

+0

私の答えを編集しました – Inca

関連する問題