migrify/template-checker

此包已被弃用,不再维护。作者建议使用symplify/template-checker包。

检查您的TWIG模板


README

Downloads total

检查您的TWIG模板

安装

composer require symplify/template-checker --dev

用法

检查Latte模板

  • 现有类
  • 现有类常量
  • 现有静态调用
vendor/bin/template-checker check-latte-template templates

检查Twig控制器路径

final class SomeController
{
    public function index()
    {
        return $this->render('does_path_exist.twig');
    }
}
vendor/bin/template-checker check-twig-render src/Controller

从Latte模板提取静态调用到FilterProvider

您的模板中是否有静态调用?这是一个隐藏的过滤器。让我们将其解耦,以便我们可以在项目的其余部分使用DI和服务

vendor/bin/template-checker extract-latte-static-call-to-filter templates

但这只是一个测试运行...如何应用更改?

vendor/bin/template-checker extract-latte-static-call-to-filter templates --fix

会发生什么?静态调用将被Latte过滤器替换

 # any latte file
-{\App\SomeClass::someStaticMethod($value)}
+{$value|someStaticMethod}

过滤器将提供

use App\Contract\Latte\FilterProviderInterface;
use App\SomeClass;

final class SomeMethodFilterProvider implements FilterProviderInterface
{
    public const FILTER_NAME = 'someMethod';

    public function __invoke(string $name): int
    {
        return SomeClass::someStaticMethod($name);
    }

    public function getName(): string
    {
        return self::FILTER_NAME;
    }
}

文件将生成到/generated目录。只需重命名命名空间,并将其复制到您的流程中。

您想了解更多关于干净的Latte过滤器的信息吗?请阅读如何从Latte过滤器中去除魔法、静态和混乱


报告问题

如果您遇到错误或想要请求新功能,请前往Symplify monorepo问题跟踪器

贡献

此包的源代码包含在Symplify monorepo中。我们欢迎在symplify/symplify上对此包进行贡献。