get_object_vars()期望参数1是object, string given


"get_object_vars() expects parameter 1 to be object, string given"

得到这个错误:

login: demo
password: ****
[AJAX] Invalid JSON - Server reponse is: 
<br />
<b>Warning</b>:  get_object_vars() expects parameter 1 to be object, string given in <b>C:'wamp'www'examples'json-rpc'json-rpc.php</b> on line <b>75</b><br />
<br />
<b>Warning</b>:  get_object_vars() expects parameter 1 to be object, string given in <b>C:'wamp'www'examples'json-rpc'json-rpc.php</b> on line <b>75</b><br />
<br />
<b>Warning</b>:  get_object_vars() expects parameter 1 to be object, string given in <b>C:'wamp'www'examples'json-rpc'json-rpc.php</b> on line <b>75</b><br />
{"jsonrpc":"2.0","result":null,"id":"2","error":{"code":-32600,"message":"Invalid Request: no method"}}

在实际文件中它指的是它说的是

// return object field if exist otherwise return default value
function get_field($object, $field, $default) {
  $array = get_object_vars($object);
  if (isset($array[$field])) {
    return $array[$field];
  } else {
    return $default;
  }
}

我可以把它改成"get_string_vars"吗?或者它必须保持与密码有关的对象?我是个新手,正在做一个项目,谢谢。

您需要传递给get_field()一个对象而不是字符串。

你可能需要这样做:

$object = json_decode($input);
$result = get_field($object, $field, $default);