lordsimal/cakephp-psalm

为 CakePHP 定制的 Psalm 插件

安装次数: 7,931

依赖者: 0

建议者: 0

安全性: 0

星标: 2

关注者: 1

分支: 0

开放问题: 0

类型:psalm-plugin

2.0.0 2023-09-10 08:08 UTC

This package is auto-updated.

Last update: 2024-08-28 16:40:07 UTC


README

Latest Stable Version Total Downloads Latest Unstable Version License

概述

此插件为 Psalm 中 CakePHP 特定方法提供正确的返回类型。

快速开始

请参考 完整的 Psalm 文档 以获取如何在项目中使用 Psalm 的更详细指南。

首先,您需要安装 Psalm 基础包并创建一个 psalm.xml

composer require --dev vimeo/psalm
./vendor/bin/psalm --init

接下来,您需要引入此包并在 Psalm 中启用它

composer require --dev lordsimal/cakephp-psalm
./vendor/bin/psalm-plugin enable lordsimal/cakephp-psalm

最后,您可以尝试使用它

./vendor/bin/psalm

工作原理

目前,仅修正以下返回类型

  • Cake\ORM\Locator\LocatorInterface::get()
  • Cake\ORM\Locator\LocatorAwareTrait::fetchTable()

此功能可在 src/Type/TableLocatorHandler.php 中找到

其中,getClassLikeNames() 通知 Psalm 需要更改哪些类的返回类型。

getMethodReturnType() 中,我们检查当前调用的是哪个方法,并获取该调用中的第一个参数值。

使用该值,我们获取运行时返回的 "真实" FQCN 表,并告诉 Psalm 使用该值而不是默认的 Cake\ORM\Table

需要帮助

我非常欢迎与此插件相关的以下方面的帮助