spaze/phpstan-stripe

Stripe SDK 扩展程序 for PHPStan

安装次数: 722 027

依赖项: 1

建议者: 0

安全性: 0

星标: 5

关注者: 4

分支: 6

开放问题: 0

类型:phpstan-extension

v3.2.0 2024-07-21 01:46 UTC

This package is auto-updated.

Last update: 2024-09-21 02:07:25 UTC


README

Stripe SDK 扩展程序 for PHPStan

寻找维护者/EOL

更新:我已经找到了新的维护者(s),请参阅讨论,因此这可能会很快改变(和URL)。谢谢!

添加特定类型,用于替换许多类中许多属性的 Stripe\StripeObject 类型声明,这些类用于 Stripe API 的 PHP 库。请参阅 extension.neon 以获取当前替换属性的全列表。

还添加了仅当对象更新时使用的属性的类型。这些属性在类(或类型错误)上没有使用 @property 标签进行文档化,开发团队认为它们应该保持这种状态。老实说,我不确定添加 @property 标签是否是最佳方式。

PHPStan 显然会标记此类属性访问,此扩展程序将通过告诉 PHPStan 这些属性存在来解决这个问题。

此扩展程序在其配置中不使用

parameters:
	universalObjectCratesClasses:
		- Stripe\StripeObject

因为它在 SDK 中,所有内容都 extends StripeObject(或所有内容 extends ApiResource,它反过来 extends StripeObject),所以你的代码会读取或写入的每个属性都会存在,至少对于 PHPStan 而言。并且我希望此扩展程序提供更精确的检查。

如果你不想或不能使用此扩展程序,请将 universalObjectCratesClasses 配置片段添加到你的 phpstan.neon,然后准备就绪。

安装

该软件包托管在 Packagist 上,因此您可以使用 Composer 安装它。

composer require --dev spaze/phpstan-stripe

如果您使用 phpstan/extension-installer,您就准备好了!

对于手动安装,请将其添加到您的 phpstan.neon

includes:
	- vendor/spaze/phpstan-stripe/extension.neon