ノンプログラマー・プログラミング・ガイド

ほぼ独学。もはやおっさんになりかかってからプログラミングの勉強開始。HTML、CSS、JavaScript、SQL、PHP、Javaがなんとなく解る。Joomla!とandroidで書いたプログラムを配布中。iPhoneアプリ作りたいからMacくれ(下さい)。

PHPで、JSON形式の値をデコードするときに、なにやら大きな数をうっかり入れていると、floatになるみたい。正の数の最大値は、32bitで2,147,483,6487(2^31-1)となる模様。これを超えた値だと、float型(1.00000239289...とか)に自動的に変換されるみたい。



解決策: <= PHP5.4
PHP5.4以上だとなにやら第四引数で、大きな数字の扱い方を指定できるみたい
http://php.net/manual/en/function.json-decode.php


解決策:< PHP5.3
PHP5.3以下の場合は、コメント欄に書かれている
http://php.net/manual/en/function.json-decode.php#105892

number_format($bigInt, 0, '', '');
がよさげみたい。

大きな数字を文字列に変換してくれます。



FacebookのAPI使ってて、idがfloatに変換されててなんだこりゃあああああああああああって思っただけ・・・・。


 

なんとなくブログ作った

このページのトップヘ