DATETIME型からTIMESTAMP型へPHPで変換する関数
presented by 役に立つかもしれないBlog
またまたPHPネタですが、お仕事中に思いついたので書きますよ。
PHPでMySQLから取得したDATETIME型の日付文字列を、時間の計算などに使えるTIMESTAMP(タイムスタンプ)型に変換するための関数です。
PHPではmktime()という関数がタイムスタンプを取得するのに便利なんですけど、元の材料が日付の文字だけだとすぐ変換できないんですよね。
で、strtotime()という便利な関数があるのですが、すっかり存在を忘れてて自作関数を作っちゃいました。 需要は全然ないですが、参考に見てみてください。
ちなみに、strtotime()を使うと簡単に変換ができてしまいます。
$timestamp = strtotime("2010-07-15 19:12:40");
datetime2timestamp
はい、では需要がない自作関数の紹介です。
/**
* DATETIME型文字列をタイムスタンプに変換
*
* @param string $datetime_string DATETIME型の文字列
* @return int
*/
function datetime2timestamp($datetime_string) {
$matches = array();
preg_match("/^(\d+)\-(\d+)\-(\d+) (\d+):(\d+):(\d+)$/", $datetime_string, $matches);
return mktime(intval($matches[4]),intval($matches[5]),intval($matches[6]),intval($matches[2]),intval($matches[3]),intval($matches[1]));
}
正規表現を知ってるといろいろ便利だな~、ってことで。
関連情報
- Flashのマスクでグラデーションを利用する方法
- Twitter APIにも使われるOAuth認証がやっと分かった
- PEAR::HTTP_OAuthをインストールする
- Google Analyticsで「ページ別セッション数」を英語で言うと?
- Firefoxで履歴を保ったままタブをコピーする
- iPhone3Gの人、解約違約金から逃れよう!



コメントフォーム