2038年問題を64bitで乗り切ろう

2000年問題が過ぎ去って早15年経つわけですが。 次は2038年問題とやらがやって来るそうな。 2038年問題とは、簡単に言うと”32bitのシステム上では、日付計算が2038年1月19日午後12時14分8秒以降桁あふれするので、計算がおかしくなっちゃうよ”って問題です。 前の2000年問題の時は「大変だなぁ〜」と他人事でしたが、今回の2038年問題はそうもいきません。 なぜなら、PHPのdate関数がこれの対象になるから。 しかし、回避方法は実に簡単。 64bitシステムに移行すればいいんです。 というか、そもそも2038年に現存する32bitシステムのサーバが生きているんだろうかなんて疑問が浮かんだりしますが。 何はともあれ、サーバを64bit環境にすればいいのです。 しかし、OSを64bitにすればいいわけじゃない。 インストールするPHPももちろん64bit版を入れましょう。 という事で現状のPHPが32bitなのか64bitなのか確認する方法は下記コマンド。
php -r 'echo PHP_INT_SIZE;'
レンタルサーバとかでコマンドが実行できない場合は下記コードをphpファイルに記述してアクセスしてみましょう。
<?php
  echo PHP_INT_SIZE;
?>
すると、4だと32bitで8だと64bitです。 もちろん自分が借りているVPSは64bitだったわけですが・・・ 会社のサーバは32bitでした。

コメントを残す