我想实现一个自定义REST端点,它也可以返回一个空对象。但是,如果它应该返回空对象,则回调返回的空关联数组将转换为空数组。
如何强制端点将数组转换为json_encode
通过设置JSON_FORCE_OBJECT
旗帜
function rest_cb() {
return array(); // this will result in the REST response [] but {} is required
}
function on_rest_api_init() {
register_rest_route(\'ns/v1\', \'empty-object\', \'rest_cb\');
}
最合适的回答,由SO网友:felixlinker 整理而成
找到了解决方案:通过将返回值强制转换为对象,可以确保在空数组的情况下,在REST请求时返回空对象。
在我的初始示例的基础上,此代码可以工作:
function rest_cb() {
return (object) array();
}