$spec) { $new_spec = array(); foreach ($spec as $key => $value) { switch ($key) { case 'label': $new_spec['name'] = $value; break; case 'required': case 'default': case 'caption': case 'options': $new_spec[$key] = $value; break; case 'checkbox-label': $new_spec['strings']['edit.checkbox'] = $value; break; case 'checkbox-value': $new_spec['strings']['view.yes'] = $value; break; case 'type': switch ($value) { case 'string': $value = 'text'; break; case 'user': $value = 'users'; $new_spec['limit'] = 1; break; } $new_spec['type'] = $value; break; case 'copy': $new_spec['copy'] = $value; break; } } $new[$field_key] = $new_spec; } PhabricatorConfigEntry::loadConfigEntry($new_key) ->setIsDeleted(0) ->setValue($new) ->save(); echo "Done.\n";