automattic/jetpack-phan-plugins

为 Jetpack 单一仓库创建的 Phan 插件。

v0.1.0 2024-08-29 19:01 UTC

This package is auto-updated.

Last update: 2024-09-18 03:17:47 UTC


README

为 Jetpack 单一仓库创建的 Phan 插件。

使用方法

使用以下命令安装

composer require --dev automattic/jetpack-phan-plugins

然后将来自 vendor/automattic/jetpack-phan-plugins/src/ 的相应插件添加到您的 Phan 配置 'plugins' 数组中。

插件

HtmlTemplatePlugin

一个“HTML 模板”文件是一个生成 HTML 片段的 PHP 文件,该片段由代码库中的某个方法或函数调用加载,例如这样

function load_template( $name ) {
	$some_var = $this->get_some_var();
	require __DIR__ . "/templates/$name.php";
}

Phan 通常会将模板评估为全局作用域,这意味着它不知道 $this$some_var,并且会抱怨尝试访问它们。

使用此插件。首先,在文件顶部的一个注释中(即在任何实际代码之前,甚至 namespace),添加 @html-template <FQSEN>(其中 <FQSEN> 类似于 Namespace\Classname::method_nameNamespace\function_name)。这告诉 Phan 该文件应在命名函数或方法的作用域内解释,包括适当的 $this

其次,在模板的文件注释或引用的方法/函数的文档注释中,包括 @html-template-var T $var,就像 @param@var 一样,以声明方法/函数为加载的模板提供的任何附加变量。

安全性

需要报告安全漏洞?请访问 https://automattic.com/security/ 或直接访问我们的安全漏洞赏金网站 https://hackerone.com/automattic

许可协议

phan-plugins 在 GNU 通用公共许可证 v2(或更高版本) 下授权