0

我在让 PHPStan 看到 FuelPHP 核心类时遇到了很多麻烦。看起来这种事情会导致它悲伤:

namespace Fuel\Core;

/**
 * Template Controller class
 *
 * A base controller for easily creating templated output.
 *
 * @package   Fuel
 * @category  Core
 * @author    Fuel Development Team
 */
abstract class Controller_Template extends \Controller
{
    /**
    * @var string page template
    */
    public $template = 'template';

其中 Controller 也在 Fuel\Core 命名空间中:

namespace Fuel\Core;

abstract class Controller
{
    /**
     * @var  Request  The current Request object
     */
    public $request;

看起来 PHPStan 可以找到 Controller,因为它正在根命名空间中查找。FuelPHP 解决了这个问题(魔术?自动加载?别名?)。有没有办法让 PHPStan 加入同一个潮流,或者我是否需要删除我正在使用的所有核心类?

4

1 回答 1

0

您是否尝试遵循本指南?PHPStan:发现符号

我过去帮助建立了 FuelCMS 分析。对那个用户有用的是phpstan.neon

parameters:
    scanDirectories:
      - core/classes

    bootstrapFiles:
      - core/classes/autoloader.php

有一个有效的示例存储库:https ://github.com/ondrejmirtes/phpstan_problem/tree/fix

由于某种原因,它phpstan.neon被埋没了,app/classes/controller而它绝对应该在根目录中。但否则它会起作用。

于 2021-08-18T09:08:53.363 回答