KAKIMASSE

ネットで見つけた面白い記事や、役立つのではと感じたネタなどを書いています。

PHP:年(Y)と週番号(W)からタイムスタンプを取得する方法

      2011/01/14

例えば今日が何年の第何週目かを知るには下の関数で取得出来ますが、

<?php
date('Y-W');
?>

⇒今日が2010年11月12日なら 2010-45 と表示されます。

でも、2010年の45週は何月何日なのかを知りたい時がありました。
で、そんな時どうするのかのメモ。

一発で簡単に求められます。

<?php
$ret=strtotime('2010W45');
?>

⇒2010年45週のタイムスタンプ 1289142000 が求められます。
後はdate('Y/n/j H:i:s', $ret);などとして好きなフォーマットで出力可能です。

さらに週の曜日指定をしたい場合は

<?php
月曜なら
$ret=strtotime('2010W451');
$ret=strtotime('2010W45');と変わらないので省略可能です。
火曜
$ret=strtotime('2010W452');
.
.
土曜
$ret=strtotime('2010W456');
日曜
$ret=strtotime('2010W457');
?>

です。
ちなみに第1週~9週はどうするかというと、

2011年第1週月曜日(2011/01/03)
$ret=strtotime('2011W011');
2011年第9週木曜日(2011/03/03)
$ret=strtotime('2011W094');
です。
Wの後が01~09なのがミソですね☆

 - PHP

SPONSORD LINKS

スポンサーリンク

スポンサーリンク

Message

メールアドレスが公開されることはありません。

  関連記事

no image
PHP:PHPで文字コードUFT-8を出力するページでブラウザのエンコードがシフトJISになってしまう時の対応方法

ファイルはUTF-8で書かれてて、 htmlソースののmetaタグも <m ...

no image
PHP:今週月曜00:00:00のタイムスタンプを取得したい

※2011/4/23 追記 コメントにて一行で解決する方法を教えて頂きました。 ...

no image
WordPress:特定の記事(エントリ)でPHPを実行したい

このブログでそんな事がしたくなって、調べてみました。 エントリ中でPHPコードを ...

no image
PHP:文字列の比較で == は絶対に使っちゃだめ。

マジですか? しかもかなり前のエントリー(汗)。 PHPでご飯食べてる先輩もフツ ...

no image
imagickのインストールでFatal error: Allowed memory size of 8388608 bytes exhausted (tried to allocate 92160 bytes) in /usr/share/pear/PEAR/PackageFile/v2/Validator.php on line 912となる場合の対処方法

Centos5.5(64bit)のサーバにImageMagickをインストールし ...

no image
PHP:htmlspecialchars関数を簡単に使いやすくする

文字列中の文字でHTMLエンティティに変換が必要な文字があった場合に エンティテ ...

no image
PHP:au携帯のデバイスIDと機種名称(モデル名)のリストを配列で作ってみました

ケータイサイトネタです。 PHPでPEARのライブラリNet_UserAgent ...

no image
Qdmailを使ってiphoneにデコメール(デコメ、HTMLメール)を送るとテキストメールで届いてしまう不具合への対応方法

全キャリアへデコメールの作成が行えることで有名なQdmail。 http://h ...

no image
PHP:MYSQLデータベースに携帯の絵文字をINSERTすると???と文字化けする対応

更新しなさ過ぎでこのままじゃ確実に KAKIMASSEN になっちゃうよねーww ...

PHPで Warning: strtotime(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'Asia/Tokyo' for 'JST/9.0/no DST' instead in /path/to/file on line *** のエラーの対応方法

centos6、PHP5.3のサーバで Warning: strtotime() ...