繁体   English   中英

Slim PHP 框架给出返回类型错误

[英]Slim PHP framework gives Return type error

我一直在使用 Slim PHP 框架来提供我的 API 服务( https://api.rsywx.Z4D5Z6D9A2DD102C )。

最近,我将我的 PHP 更新到 8.1,当我访问该站点时,它给出了以下错误:

{
    "statusCode": 500,
    "error": {
        "type": "SERVER_ERROR",
        "description": "ERROR: Return type of App\\Application\\Actions\\ActionPayload::jsonSerialize() should either be compatible with JsonSerializable::jsonSerialize(): mixed, or the #[\\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice on line 67 in file \/home\/tr\/www\/api.rsywx.com\/src\/Application\/Actions\/ActionPayload.php."
    }
}

我没有更改我的源代码中的任何内容,所以我猜这个问题来自 Slim 框架本身。

有什么提示可以解决这个问题吗?

从 PHP 版本 8.1.0 开始,对Serializable接口进行了更新。

您可以使用#[\ReturnTypeWillChange属性暂时抑制指定行上的通知,然后进一步测试并以类似方式解决其他事件。

另一方面,将mixed类型提示添加到您的 function 中,如下所示,然后以相同的方式进一步测试以修复后续出现的问题。

public function jsonSerialize(): mixed
{
  // ...
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM