2009-04-17 11 views

答えて

7

正式なものは見つかりませんでしたが、a tutorialはstrtotime()と表示されました。 はGNU日付入力形式を使用しています。詳細はin the GNU manualに記載されています。

私は、「次へ」がGNUマニュアルに記載されている の動作に一致しないことに気付きました。 strtotime()を使用すると、次の木曜日に木曜日と同じ結果が返されます。

今日はその後

  • のstrtotime( "木曜日")木曜日、ある場合には==のstrtotime( "今日")
  • のstrtotime( "来週の木曜日")==のstrtotime( "今日+ 7日")

今日は木曜日でない場合は、

  • のstrtotime(" 木曜日 ")==のstrtotime(" 来週の木曜日」)

私はPHP 5.2.6を使用しています。

更新:

私はこれを掲示、または他の私は盲目だったので、マニュアルが更新されていると思います。 relative formatsのセクションを含むDate and Time Formats chapterへのリンクが含まれています。

+0

私は同じことを言ったことを覚えていますので、私はあなたに+1を与えますが、これはちょうどあなたが代理人を獲得しようとしているようです... – rmeador

+7

私はこれを少し狩り、他の人が同じことを探している場合に備えて質問と回答を投稿しました。これはサイトの意図された使用だと私は思う。 –

+0

はい、よくある質問には、質問<->回答の形式であれば、自分の質問に答えることはOKです。質問が愚かであれば、それは投票されます。さもなければ、これは将来この情報を探している他の人にとって役に立ちます。 – Calvin

0

私の経験では、strtotime()はリモートで日付のように見えるものを受け入れることができます。その境界を突き止める最良の方法は、テストスクリプトを作成し、値を差し込み、動作するかどうかを調べることです。

$input = "Apr 10th"; 
print(date('Y-m-d', strtotime($input))); 

ちょうど$入力変数を変更して、結果を観察してください。

1
あなたは、次のCコードを見て、それが何をしているかを追跡するために開始することができ

:PHP_FUNCTION(のstrtotime)

また、これは主な正規表現の構文解析があるため

http://cvs.php.net/viewvc.cgi/php-src/ext/date/php_date.c

検索

http://cvs.php.net/viewvc.cgi/php-src/ext/date/lib/parse_date.re

幸運

+0

両方のリンクが死んでいる。 –

+0

リンク先:https://github.com/php/php-src/blob/master/ext/date/php_date.c&https://github.com/php/php-src/blob/master/ext/ date/lib/parse_date.re –

0

基本的には、dateがstrtotimeを作成できるものはすべて解析されます。 1つの例外を除いて、米国以外の書式の書式設定に問題があります。それで、月 - 日 - 年型の書式設定をしておきます。