Я не знаю, где Виктор собирается с его ответом, но это, как вы должны обращаться с json_decode:
$decodeToArray = true;
$monrow = json_encode($monrow);
$monrow= preg_replace("/_DOT_/", ".", $monrow);
$monrow = json_decode($monrow, $decodeToArray);
$parsedArray = array();
foreach ($monrow as $key => $value) {
if ($decodeToArray) {
if (is_array($monrow[$key]) && $key == 'properties') {
$obj = new Object();
foreach ($monrow[$key] as $property => $contents) {
$obj->$property = $contents;
}
$parsedArray[$key] = $obj;
} else {
$parsedArray[$key] = $value;
}
} else {
if (is_object($monrow->$key) && $key == 'properties') {
$obj = new Object();
foreach ($monrow->$key as $property => $contents) {
$obj->$property = $contents;
}
$parsedArray[$key] = $obj;
} else {
$parsedArray[$key] = $value;
}
}
}
Кроме того, для Виктора, json_decode ($ JSon, правда) будет рекурсивно изменить весь JSON в массив, в возвращенном массиве не будет объектов:
print_r(json_decode('{"array":[1,2,3],"boolean":true,"null":null,"number":123,"object":{"a":"b","c":"d","e":"f"},"objectArray":[{"a":"b","c":"d","e":"f"},{"a":"b","c":"d","e":"f"},{"a":"b","c":"d","e":"f"}],"string":"Hello World"}', true));
Array
(
[array] => Array
(
[0] => 1
[1] => 2
[2] => 3
)
[boolean] => 1
[null] =>
[number] => 123
[object] => Array
(
[a] => b
[c] => d
[e] => f
)
[objectArray] => Array
(
[0] => Array
(
[a] => b
[c] => d
[e] => f
)
[1] => Array
(
[a] => b
[c] => d
[e] => f
)
[2] => Array
(
[a] => b
[c] => d
[e] => f
)
)
[string] => Hello World
)
Как выглядит ваш массив после json-декодирования? –
А как насчет 'var_dump ($ monrow ['properties']);'? –