微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何让 PhpStorm 理解 Ds\Map 键类型?

如何解决如何让 PhpStorm 理解 Ds\Map 键类型?

我想对 Ds\Map 变量进行类型检查。为了做到这一点,我在那里声明了一个虚拟接口并声明了类型:

/**
 * @method OtherType offsetGet(MyType $offset)
 * @method void offsetSet(MyType $offset,OtherType $value)
 */
interface MyMap extends ArrayAccess,Iterator
{
}

但是当我使用它时:

/** @var Map|MyMap $map */
$map = new Ds\Map();
$map[$offset] = $value;

- PHPStorm 无法识别它并显示警告:Illegal array key type MyType。我该如何解决

解决方法

在你的第一个代码中使用这样的东西告诉phpstorm你的界面在哪里:

.obj

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。