我发送以下json:{"name":"New event"}
到PATCH处理程序:function patch($id, $request_data = NULL)
但收到以下警告:Warning: strlen() expects parameter 1 to be string, array given in /public_html/vendor/Luracast/Restler/Data/Validator.php on line 115
该行的来源是:
switch ($info->type) {
...
case 'string' :
$r = strlen($input);
所以我在Validator.validate()的第一行添加了一些代码,看看它认为变量是什么:
print("$input: $info->type\n");
我得到了这个:
1: int
Array: string
所以它认为数组是一个字符串。它仍然能够继续并处理请求,但它会将此警告作为响应返回,而不是我可以处理的有效内容。
任何想法我做错了什么?
答案 0 :(得分:1)
v3分支中的最新版本(Restler 3 RC4)解决了这个问题
答案 1 :(得分:1)
我也有这个问题,但那是因为我给了param
错误的类型。
例如
@param string $request_data
更改类型
string to mixed
问题将得到解决。