function views_json_query_plugin_query_json::parse_row in Views JSON Query 7
Parse row.
A recursive function to flatten the json object. Example: {person:{name:{first_name:"John", last_name:"Doe"}}} becomes: $row->person/name/first_name = "John", $row->person/name/last_name = "Doe"
1 call to views_json_query_plugin_query_json::parse_row()
File
- ./
views_json_query_plugin_query_json.inc, line 357 - Query plugin for views_json_query.
Class
- views_json_query_plugin_query_json
- @file Query plugin for views_json_query.
Code
function parse_row($parent_key, $parent_row, &$row) {
$props = get_object_vars($parent_row);
foreach ($props as $key => $value) {
if (is_object($value)) {
unset($row->{$key});
$this
->parse_row(is_null($parent_key) ? $key : $parent_key . '/' . $key, $value, $row);
}
else {
if ($parent_key) {
$new_key = $parent_key . '/' . $key;
$row->{$new_key} = $value;
}
else {
$row->{$key} = $value;
}
}
}
return $row;
}