4

次の値のキーを含むJSON文字列があります:123.00。json_decode関数を使用すると、前のキーが123.00ではなく123に等しいデコードされた文字列を取得します。引用符で囲まずにそのような値を正しくデコードする方法はありますか?

4

5 に答える 5

7

これは現在、PHP のバグとして取り上げられています。

バグレポート: https://bugs.php.net/bug.php?id=50224

options将来的には、より厳密な型指定のためにパラメーターを介してフラグを渡す機能が存在する可能性があります。ただし、今のところは引用符で囲むだけで十分です。

于 2012-09-21T13:51:22.820 に答える
1

私はそれが可能だとは思わない!

于 2012-09-21T13:52:23.617 に答える
1
//convert the json to a string before json_decode
$res = preg_replace( '/next_cursor":(\d+)/', 'next_cursor":"\1"', $json );
于 2012-09-21T14:15:49.097 に答える
0
number_format($number, 2) 

それを通して数値を出力しますか?

于 2012-09-21T13:51:38.977 に答える
0

JSON_BIGINT_AS_STRINGたとえば、次のオプションを使用できます。

$json = json_decode($input, true, 512, JSON_BIGINT_AS_STRING);

ただし、これは PHP 5.4 以降でしか機能しないことに注意してください。

于 2014-11-28T12:59:51.437 に答える