Drupal
您可以使用 PhpStorm 作为 Drupal 开发的 IDE,包括开发 Drupal 模块、主题和核心。 支持的版本为 6、7、8 和 9。
在 PhpStorm 中启用 Drupal 支持
选项 1:在 PhpStorm 设置中启用 Drupal 支持
打开 (Ctrl+Alt+S) 。
展开 节点,选择 启用 Drupal 集成 复选框,并按如下所示指定参数:

Drupal 安装 路径
指定包含已安装 Drupal 核心的根目录路径。
设置 PHP | 包含路径
选择 复选框,以便 PhpStorm 自动将 Drupal 核心目录添加到项目的 include paths。
要手动配置路径,请打开 (Ctrl+Alt+S) 并在 包含路径 选项卡上编辑目录列表。

Version
选择要使用的 Drupal 版本,支持的版本为 6、7、8 和 9。
请点击 Apply 以保存更改。
选项 2:从 Drupal 模板创建一个新的 PhpStorm 项目
您可以在 PhpStorm 中从 Drupal 模块模板 创建一个新的 Drupal 项目。
PhpStorm 根据所选的 Drupal 版本生成并配置项目模板。 对于 Drupal 8,会生成一个 module_name.info.yml 文件。
通过在主菜单中选择 或单击 PhpStorm 欢迎屏幕上的 创建新项目 ,打开 新项目 对话框。
在左侧窗格中选择 Drupal 模块。
在右侧窗格中, 指定 Drupal 支持参数。
选项 3:导入现有的 Drupal 模块项目
当您在 PhpStorm 中打开 ( 在主菜单中) 一个现有的 Drupal 模块项目时,IDE 会识别 Drupal 特定的项目结构并建议激活 Drupal 支持。

单击 启用 Drupal 支持 打开模态对话框,并 指定参数。

将 Drupal 文件与 PHP 类型关联
为了提供正确的代码高亮显示,PhpStorm 需要将 Drupal 文件格式与 PHP 文件类型关联。
当您在 PhpStorm 中打开一个 Drupal 项目时,IDE 会自动检测项目类型并建议将 Drupal 文件类型与 PHP 类型关联。

手动关联文件类型
在 设置 对话框(Ctrl+Alt+S )中,导航到 。
在打开的 文件类型 页面上,在 识别的文件类型 列表中选择 PHP。
在右侧的 文件名模式 区域中,单击 (
),然后逐一添加
*.test、*.install、*.engine、*.profile和*.theme文件名模式。
有关更多信息,请参见 文件类型关联。
在 PhpStorm 中使用 Drupal hooks
PhpStorm 在 .module 文件中提供对 Drupal hooks 的完整原生支持。
使用代码补全来声明 hooks。
PhpStorm 会索引任何 hook 调用,从而使 hook 名称在代码补全中可用,以创建 hook 实现。 要完成声明,请开始输入 hook 名称并按 Ctrl+Space。

导航到 hook 调用。
要从编辑器导航到 hook 调用,请单击边距中的
图标。
如果有多个调用,PhpStorm 会显示可用 hook 调用的列表,您可以选择要跳转的调用。

您将被导航到使用
module_invoke_all()、module_invoke()或drupal_alter()调用相关 hook 的行。
查看 hook 文档。
将插入符号放在 hook 名称上,然后选择 或按 Ctrl+Q。

在 PhpStorm 项目中设置 Drupal 代码样式
如果 PhpStorm 识别项目为 Drupal 模块,或者在现有项目中启用了 Drupal 集成,或者当您从 Drupal 模块模板创建新项目时,PhpStorm 会自动建议应用预配置的 Drupal 编码标准(代码样式)。

手动更改代码样式设置
您还可以在 代码样式:PHP 页面 上手动设置预定义的代码样式。
在 设置 对话框(Ctrl+Alt+S )中,导航到 。
单击 设置从 并从打开的下拉列表中选择 Drupal。
如果适用,使用页面上的控件自定义代码样式。
根据 Drupal 编码标准检查代码
使用 PhpStorm,您可以结合使用 PHP_CodeSniffer 工具(检测编码标准问题)和 Coder (为 PHP_CodeSniffer 提供一组 Drupal 特定标准)。 这将确保您的代码干净、一致,并避免一些常见错误。
要开始,请使用 安装并配置 PHP_CodeSniffer 中描述的任何方法安装 PHP_CodeSniffer。 可能最简单的方法是使用 Composer 安装它。
安装 PHP_CodeSniffer
在 composer.json 中,将
squizlabs/php_codesniffer依赖项记录添加到require或require-dev键中。 要获取包名称和版本的代码补全,请按 Ctrl+Space。请执行以下操作之一:
单击编辑器面板顶部的 安装 快捷链接。
如果启用了 未安装的 Composer 包 检查,PhpStorm 将突出显示当前未安装的声明依赖项。 按 Alt+Enter 并选择是要安装特定依赖项还是一次性安装所有依赖项。
接下来,安装 Coder ,它将为 PHP_CodeSniffer 提供 Drupal 特定标准。
安装 Coder
在 composer.json 中,将
drupal/coder依赖项记录添加到require或require-dev键中。 要获取包名称和版本的代码补全,请按 Ctrl+Space。请执行以下操作之一:
单击编辑器面板顶部的 安装 快捷链接。
如果启用了 未安装的 Composer 包 检查,PhpStorm 将突出显示当前未安装的声明依赖项。 按 Alt+Enter 并选择是要安装特定依赖项还是一次性安装所有依赖项。
Coder 包将被安装,并且相应的 Drupal 标准将自动为 PHP_CodeSniffer 验证 检查选择。 如果需要,您可以在 页面的 设置 对话框中(Ctrl+Alt+S )进一步自定义检查。 欲了解更多信息,请参阅 启用 PHP_CodeSniffer 作为 PhpStorm 检查。
从 PhpStorm 查看 Drupal API 文档
在 PhpStorm 编辑器中,选择您感兴趣的符号,然后从上下文菜单中选择 在 Drupal API 中搜索。 Drupal API 文档 将打开。

从 PhpStorm 使用 Drush 命令行工具
PhpStorm 与 Drush 命令行 shell 和脚本接口(版本 5.8 及更高版本)集成。 在开始之前,请按照 官方 Drush 文档 中的说明下载并安装 Drush。
自动配置 Drush
当您在 Drupal 项目中 安装 Composer 依赖项 时,PhpStorm 会自动检测并配置 Drush,并在 Composer 日志 中显示相应的通知。

如果您想 自定义工具 ,请单击
快速跳转到 PHP 命令行工具支持 设置页面。
手动配置 Drush
在 设置 对话框 (Ctrl+Alt+S) 中,前往 。
点击
工具栏。
在 命令行工具 对话框中,从列表中选择 Drush ,并指定其可见性级别(Project 或 全局)。

当您单击 确定 时,将打开 Drush 对话框。
指定 Drush 可执行文件的路径。 默认位置通常在 Windows 上为 C:/ProgramData/Drush/drush.bat ,在 macOS 或 Linux 上为 /usr/bin/drush 。 如果您遵循了标准安装程序,请单击 确定 以接受预定义路径。
如果是自定义安装,请输入 Drush 可执行文件的路径并单击 确定。
单击 确定 以应用更改并返回到 PHP 命令行工具支持 页面。 可选地,单击
以编辑工具属性,或单击
以自定义命令集。 欲了解更多信息,请参阅 自定义工具。
运行 Drush 命令
转到 或按两次 Ctrl。
在打开的 运行任意内容 窗口中,以
<drush> <command>格式输入命令调用。命令执行结果显示在 运行工具窗口 中。

终止命令
单击
位于 运行工具窗口 工具栏上。
调试 Drush 命令
Drupal 命令在扩展 DrushCommands 的控制器类中定义。 要调试命令,关键是启动命令本身的调试会话,而不是定义该命令的控制器类文件。 否则,Drupal 引导过程将被跳过,执行将失败。
在 Symfony 中使用 Drupal 8
PhpStorm 提供 Drupal 版本 8 与 Symfony 之间的紧密集成。 通过此集成,Symfony 组件与 Drupal 基础设施连接。 要利用此集成:
安装 Drupal Symfony Bridge 插件
在 设置 对话框 (Ctrl+Alt+S) 中,导航到 插件页面。 单击 浏览存储库 ,选择插件并单击 安装。 有关更多信息,请参阅 安装插件。
启用注解
要获得高级注解支持,请按照 安装插件 中的说明安装 PHP Annotations 插件。
Drupal 8 - Symfony 集成提供了哪些编码辅助功能?
适用于 Drupal 特定 t() 函数 的字符串会在您的项目中被索引并提供补全。
为 url() 和其他 Drupal API 函数中的相关 yml 键值提供补全,从而使搜索正确值变得更容易。
通过按 Ctrl+B 或选择 导航 | 转到声明 导航到 yml 文件。
完全支持 服务容器 ,描述在 yml 文件中,包括补全和使用 Ctrl+B 的导航。
支持 Twig 模板引擎 (现在是 Drupal 8 的默认模板引擎),包括补全、导航和对 Drupal 函数的识别。 另请参阅 Drupal 8 中的 Twig。



