php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #63737 json_decode does not properly decode with options parameter
Submitted: 2012-12-11 11:03 UTC Modified: 2013-01-08 03:59 UTC
From: googleguy@php.net Assigned: aharvey (profile)
Status: Closed Package: JSON related
PHP Version: 5.4.9 OS:
Private report: No CVE-ID: None
Welcome back! If you're the original bug submitter, here's where you can edit the bug or add additional notes.
If you forgot your password, you can retrieve your password here.
Password:
Status:
Package:
Bug Type:
Summary:
From: googleguy@php.net
New email:
PHP Version: OS:

 

 [2012-12-11 11:03 UTC] googleguy@php.net
Description:
------------
json_decode does not properly decode JSON strings using options parameter.



Test script:
---------------
json_decode('12345678901234567890', false, 512, JSON_BIGINT_AS_STRING); // this won't work

However this will

json_decode('[12345678901234567890]', false, 512, JSON_BIGINT_AS_STRING);

Expected result:
----------------
string(20) "12345678901234567890"

Actual result:
--------------
float(1.2345678901235E+19)

Patches

Pull Requests

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2012-12-11 11:04 UTC] aharvey@php.net
Our code path for bare integer literals is different to the one we use for literals within objects and arrays. Should be an easy fix.
 [2012-12-11 11:04 UTC] aharvey@php.net
-Status: Open +Status: Analyzed -Assigned To: +Assigned To: aharvey
 [2012-12-11 12:04 UTC] aharvey@php.net
-Status: Analyzed +Status: Closed
 [2012-12-11 12:04 UTC] aharvey@php.net
The fix for this bug has been committed.

Snapshots of the sources are packaged every three hours; this change
will be in the next snapshot. You can grab the snapshot at
http://snaps.php.net/.

 For Windows:

http://windows.php.net/snapshots/
 
Thank you for the report, and for helping us make PHP better.

Fixed on 5.4, 5.5 and master.
 [2013-01-02 11:46 UTC] franssen dot roland at gmail dot com
This is still an issue in 5.4.10 (Linux)
 [2013-01-02 20:13 UTC] googleguy@php.net
-Status: Closed +Status: Re-Opened
 [2013-01-02 20:18 UTC] googleguy@php.net
This commit has been removed from the release branch for some reason.
 [2013-01-08 03:59 UTC] aharvey@php.net
It was never on the release branch: I committed it after 5.4.10 was branched. It'll be in 5.4.11.
 [2013-01-08 03:59 UTC] aharvey@php.net
-Status: Re-Opened +Status: Closed
 [2013-01-08 03:59 UTC] aharvey@php.net
It was never on the release branch: I committed it after 5.4.10 was branched. It'll be in 5.4.11.
 
PHP Copyright © 2001-2025 The PHP Group
All rights reserved.
Last updated: Fri Jan 31 22:01:29 2025 UTC