PhpStorm 在 CakePHP 上显示我的 Bake 主题错误

PhpStorm shows as error my Bake theme on CakePHP

在 PhpStorm 9 上,我将 *.ctp 与 PHP 相关联。

我也创建了自己的烘焙主题

http://book.cakephp.org/3.0/en/bake/development.html#creating-a-bake-theme.

因为在这些文件里面有这样写的代码

<%
$done = [];
        foreach ($associations as $type => $data):
            foreach ($data as $alias => $details):
                if (!empty($details['navLink']) && $details['controller'] !== $this->name &&
                    !in_array($details['controller'],
                    $done)):
        %>

它用红色下划线显示这些文件有错误。 PhpStorm 无法将 <% 和其他类似内容识别为有效的 PHP 代码。但它不仅显示这些文件,它还显示所有父文件夹,我不知道这些文件夹是否真的有错误,有时我会通过文件夹再次检查。只是为了确定。

解决此问题的一种方法是将文件的扩展名更改为其他名称。所以他们将不再与 PHP 相关联。但我不知道如何告诉 CakePHP 从扩展名不同于 *.ctp 的文件中烘焙模板。

另一种解决方案是告诉 PhpStorm 从检查中忽略特定路径,但我也不知道该怎么做。

似乎无法更改烘焙视图使用的扩展名,虽然您可以通过 Bake.initialize 事件访问视图 class,属性持有扩展名是受保护的,只能通过继承来更改。

对故事 IDE 方面的快速修复是排除。

右键单击 > 将目录标记为 > 已排除

这将从搜索、检查、代码完成和索引中排除该文件夹。

另见 https://www.jetbrains.com/phpstorm/help/directories.html