« MS、Vistaで追加・変更された文字をXPで利用できる日本語フォントを公開 | メイン | JavaScript: クロスブラウザでブロック要素内のクリック座標を得る方法 »

2007年02月12日

PHPによる2038年問題対応

スポンサード リンク

本を執筆しました。

【PHP TIPS】 8. 2038年問題:ITpro
Calcクラスを使うと速度が遅くなってしまいますがUNIXタイムを扱いませんので、子孫にやさしいコーディングを行う事が出来ます。

PHPによる2038年問題対応。
PHPで time 関数などによってUNIXタイムを使っている人も多いはずです。
この関数では、「1171206000」のように10桁の「1970年1月1日 00:00:00 GMT」からの秒数を返します。
この10桁では、2038年以降の日付を表すことは出来ません。9999999999の次は0となってしまい、また1970年1月1日となってしまいます。

そこで、Pear::Dateの使い方が紹介されてます。

使い方は次のようにそんなに難しいものではないので、2038年以降も扱うプログラムを書く場合はこのモジュールを使いましょう。

<?php
require_once "Date/Calc.php"
;

$nextday Date_Calc::nextDay('31''12''2999''%Y-%m-%d'
);
echo 
$nextday
;
?>

カレンダーなど、2038年以降も扱うプログラムでは重宝しそうですね。

それにしても、2038年以降ではPHPはどうなっているんでしょうね。
バージョンはいくつぐらいになっているんでしょうか。Pear::Dateなんかは存在するのかも気になりますね:-)

関連エントリ

スポンサード リンク
 

投稿者 KJ : 2007年02月12日 13:10 : コメント (0)

コメント

コメントしてください




保存しますか?