2010年7月11日日曜日

PHPで32bitを超える数値を扱う場合の注意点

今日しごとで出た問題なんですけど、PHPintval()って環境に関係なく32bitで丸められるみたいなんですよね。
下記のコードを実行してみてください

  1. $a = 123456789;  
  2.  $b = $a * 100;  
  3.  print_r($b);  
  4.  print_r(intval($b))  

正しく表示されてたらすいません。
未確認ですが、intval()だけじゃなくてsprintf()などの%dも同様の問題が有るみたいです。、

0 件のコメント:

コメントを投稿