12

I am using json_encode() to encode array into json format. but it returning object instead of array. I want to return an array not an object. any body have any idea?

3
  • What does the array look like? Commented Sep 7, 2013 at 6:12
  • 1
    please check stackoverflow.com/questions/11195692/… Commented Jul 9, 2019 at 14:38
  • echo json_encode(array_values($array)) - is the simplest way to force an array instead of an object. Commented Jul 17, 2023 at 15:53

4 Answers 4

0

Basically json_decode() will return two types of data.

1) Object 
2) Associative array

By default, json_decode() returns object type value.

But, if you want value as an array format you must use TRUE as a second argument in json_decode().

e.g,

$decoded_value = json_decode($json_encoded_value, TRUE);
Sign up to request clarification or add additional context in comments.

1 Comment

json_encode and json_decode are different functions
-1

use this code for decoding your encode json data

$encode = $your_json_encoded_data

json_decode($encode, TRUE);

Comments

-1

actually json_encode function in php will return a json formatted string.

and if you want to parse json formatted string back in php then you should use json_decode.

json_decode function will return data two types. object & associtavie array.

json_decode(); return type object

json_decode(, TRUE); return type associtative array

Comments

-2

You should use json_decode with TRUE param like following example:

$array = array(1,2,3);
$encode = json_encode($array);

$decode = json_decode($encode, TRUE);

Now $decode is array, not object.

1 Comment

I am asking for json_encode not for json_decode. when we use JSON data from javascript.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.