I have this JSON object:
{
"type": "FeatureCollection",
"features": [
{
"id": "0eb3d8a7d9afa466766e90b47f2bd785",
"type": "Feature",
"properties": {
"feature-description": "<div id=\"content\">html content here</div>"
},
"geometry": {
"coordinates": [
[
[
144.87452272951856,
-37.72702750630904
],
[
145.00292543948336,
-37.78131678501029
],
[
145.12926821291518,
-37.732458226660285
],
[
145.11278872073137,
-37.70801684893612
],
[
144.9184680420177,
-37.72431199679091
],
[
144.87452272951856,
-37.72702750630904
]
]
],
"type": "Polygon"
}
}
]
}
If I JSON.stringify
it and try to decode in PHP:
$jsonString = '"{\n \"type\": \"FeatureCollection\",\n \"features\": [\n {\n \"id\": \"0eb3d8a7d9afa466766e90b47f2bd785\",\n \"type\": \"Feature\",\n \"properties\": {\n \"feature-description\": \"<div id=\"content\">html content here</div>\"\n },\n \"geometry\": {\n \"coordinates\": [\n [\n [\n 144.87452272951856,\n -37.72702750630904\n ],\n [\n 145.00292543948336,\n -37.78131678501029\n ],\n [\n 145.12926821291518,\n -37.732458226660285\n ],\n [\n 145.11278872073137,\n -37.70801684893612\n ],\n [\n 144.9184680420177,\n -37.72431199679091\n ],\n [\n 144.87452272951856,\n -37.72702750630904\n ]\n ]\n ],\n \"type\": \"Polygon\"\n }\n }\n ]\n}"';
$json = json_decode( $jsonString );
echo gettype($json); // string
I still get a string
, instead of an object
. What am I doing wrong?
You just added an extra double quotes "
at the start and end. Just remove those and it'll work as you expected.
<?php
$jsonString = '{"type":"FeatureCollection","features":[{"id":"0eb3d8a7d9afa466766e90b47f2bd785","type":"Feature","properties":{"feature-description":"<div id=\"content\">html content here</div>"},"geometry":{"coordinates":[[[144.87452272951856,-37.72702750630904],[145.00292543948336,-37.78131678501029],[145.12926821291518,-37.732458226660285],[145.11278872073137,-37.70801684893612],[144.9184680420177,-37.72431199679091],[144.87452272951856,-37.72702750630904]]],"type":"Polygon"}}]}';
$json = json_decode( $jsonString );
echo gettype($json); // object
WORKING DEMO: https://3v4l.org/N56DS