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]));
}
正規表現を知ってるといろいろ便利だな~、ってことで。
このページに関連のある記事はこちら
- MySQLサーバーでクエリ履歴をログファイルに保存する方法
- mkdirでディレクトリに「0777」が設定できない場合の解決法
- エラー解消:Fatal error: Call to undefined function spl_autoload_register
- MySQLで「ALTER TABLE ... DROP INDEX」すると「Error 150」が出る問題
- PHPの開発環境(IDE)でベストなのはどれ?
- タグ機能を実現するための便利なデータベース設計を3つ紹介
- PHPでMovableTypeのエントリーDBをSQL検索する方法
- EC-CUBEで好きな時にログを出力する方法
- PHPでMovableType5のデータベースにアクセスする方法
- さくらのVPSのPHP+MySQLを最新のものにアップデート。
- JavaScriptでDATETIME型の日付を得る方法



コメントフォーム