在 javascript 中这很简单:假设您有一个 javascript 对象(它看起来像这样),只需更改字段:
var data = data[0], // your data is first element in an array
new_data = {},
k;
for (k in data) {
if (Object.hasOwnProperty.call(data, k)) {
if (k === 'name') k = 'label';
else if (k === 'id') k = 'value';
new_data[k] = data[k];
}
}
// new_data is the correct format now
console.log(new_data);
如果你有一个 JSON 字符串,你可以做一个正则表达式替换:
var new_json = data[0].replace(/\"([\w_\$]+)\":/g, function (all, key) {
if (key === 'name') key = 'label';
else if (key === 'id') key = 'value';
return '"' + key + '":';
});
PHP 等效项将非常相似:
$new_json = preg_replace_callback('/\"([\w_\$]+)\":/', function ($matches) {
if ($matches[1] == 'name') {
return '"label":';
} else if ($matches[1] == 'id') {
return '"value":';
}
return $matches[0];
}, $data[0]);