Unixタイムで表示される日付
- (2009-05-30 09:31:36)
-------------------------------
tksqliteを試している。世の中には凄い人々がいるものである。感謝したい。問題は一気に解決。データベースの記事内容のテキスト変換は可能となった。
文字コードも、PHPで日本語処理する際、標準的に使用されるUTF-8だけでなく、Shit_JISが使える。PC上で操作する際はやはり、Shit_JISが便利。
しかし、日付がおかしい。たとえば「2005/10/24」とあるべきところが「1234567890」となる。
これは「Unixタイム」や「Unix時間」と呼ばれる表記方法。「エポック秒」とも言うらしい。1970年からの秒数で表現されている。PHPでは日時のデータ型がないのでストリングで表現とのこと。日時と秒総数の変換はdateとStrToTime関数で行うらしい。
Excelで変換する場合:
・Unix時間->Excel
=TEXT(A1/86400+("1970/1/2"*1-"1900/1/1"*1+"9:0"*1),"yyyy/mm/dd hh:mm:ss")
・Excel->Unix時間
=(A1-25569)*86400
Unix時間変換関数:
date("Y/m/d H:i:s",1234567890)
strtotime("2005/10/24 07:00:35")
<?php
print <<<eof
<HTML><BODY>
// 1970/01/01 00:00:00 GMTからの秒数<br>
//※「Unix epoch(1970年1月1日 00:00:00 GMT))からの通算秒」<br>
// タイムスタンプから YYYY/MM/DD hh:mm:ss 書式化にする<br>
// http://www.php.net/manual/ja/function.date.php<br>
<hr>
・1130104835の変換<br>
・1217300258の変換<br>
・1218054938の変換<br>
<br>
eof;
//-------------------------------
$a = date("Y/m/d H:i:s",1130104835);
$b = date("Y/m/d H:i:s",1217300258);
$c = date("Y/m/d H:i:s",1218054938);
echo ($a."<br>");
echo ($b."<br>");
echo ($c."<br>");
echo ("<br><br><br>");
// 日付の文字列からタイムスタンプにする
echo strtotime("2005/10/24 07:00:35")."<br>\n";
echo strtotime("2008/07/29 11:57:38")."<br>\n";
echo strtotime("2008/08/07 05:35:38")."<br>\n";
//-------------------------------
print <<<eof
<hr>
</BODY></HTML>
eof;
?>
<< HTMLページ手打ち編集の悩み< | >SQLite2データのインポート&エクスポート >>