🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
## **从头开始创建文件模板** 1. [打开设置参数对话框](https://www.kancloud.cn/%E5%A6%82%E4%BD%95%E4%BD%BF%E7%94%A8/%E5%B8%B8%E8%A7%84%E6%8C%87%E5%8D%97/%E9%85%8D%E7%BD%AE%E9%A1%B9%E7%9B%AE%E5%92%8CIDE%E8%AE%BE%E7%BD%AE/%E8%AE%BF%E9%97%AE%E8%AE%BE%E7%BD%AE.md),在编辑器节点下,选择[文件和代码模板](https://www.kancloud.cn/%E5%8F%82%E8%80%83/%E8%AE%BE%E7%BD%AE%E5%8F%82%E6%95%B0%E5%AF%B9%E8%AF%9D%E6%A1%86/%E7%BC%96%E8%BE%91%E5%99%A8/%E6%96%87%E4%BB%B6%E5%92%8C%E4%BB%A3%E7%A0%81%E6%A8%A1%E6%9D%BF.md) 2. 切换到**Files**标签页 3. 在工具栏点击![新增](http://image.jellychen.cn/uploads/2016/11/new.png)并指定模板名称,文件扩展名,和模板的主体,可以包含: 1. 纯文本。 2. `#parse`指令用来[包含](https://www.kancloud.cn/ervinhua/phpstorm/441766#%E5%88%9B%E5%BB%BA%E5%92%8C%E5%BC%95%E7%94%A8%E5%8C%85%E5%90%AB%E6%A8%A1%E6%9D%BF)文件 3. 预定义变量将被展开到相应的值,用以下格式`${<variable_name>}` 可用的预定义文件模板变量有: * `${PROJECT_NAME}`\- 当前项目的名称 * `${FILE_NAME}`\- 将被创建的PHP文件名称 * `${NAME}`\- 在创建文件期间在新建文件对话框中指定的文件名称 * `${USER}`\- 系统的当前用户登录名称 * `${DATE}`\- 当前系统日期 * `${TIME}`\- 当前系统时间 * `${YEAR}`\- 当前年份 * `${MONTH}`\- 当前月份 * `${DAY}`\- 当前月的日期 * `${HOUR}`\- 当前时刻 * `${MINUTE}`\- 当前分钟 * `${PRODUCT_NAME}`\- 将被创建文件所在的IDE名称 * `${MONTH_NAME_SHORT}`\- 月份名称的前3个字母,例如: Jan, Feb, etc. * `${MONTH_NAME_FULL}`\- 月份全称,例如: January, February, etc. PhpStorm为[PHP包含模板](https://www.kancloud.cn/%E5%8F%82%E8%80%83/%E8%AE%BE%E7%BD%AE%E5%8F%82%E6%95%B0%E5%AF%B9%E8%AF%9D%E6%A1%86/%E7%BC%96%E8%BE%91%E5%99%A8/%E6%96%87%E4%BB%B6%E5%92%8C%E4%BB%A3%E7%A0%81%E6%A8%A1%E6%9D%BF.md)提供一组额外变量,也就是,可重用模板可以被包含到其它**PHP file template**。内置**PHP file template**用于生成文件头和[PHP文档注释](https://www.kancloud.cn/%E5%A6%82%E4%BD%95%E4%BD%BF%E7%94%A8/%E8%AF%AD%E8%A8%80%E5%92%8C%E6%A1%86%E6%9E%B6-%E5%85%B7%E4%BD%93%E6%8C%87%E5%8D%97/PHP-%E5%85%B7%E4%BD%93%E6%8C%87%E5%8D%97/%E5%88%9B%E5%BB%BAPHP%E6%B3%A8%E9%87%8A%E6%96%87%E6%A1%A3.md)。下列变量在**PHP include templates**中可用: * `${NAME}`\- PHP文档注释将被生成位置的类、字段或函数(方法)的名称。 * `${NAMESPACE}`\- 类或字段的命名空间的全称(除了开头的反斜杠)。 * `${CLASS_NAME}`\- PHP文档注释将被生成位置所在类的名称。 * `${STATIC}`\- 获取`static`如果要生成注释位置的方法或字段是静态的。否则变成一个空字符串。 * `${TYPE_HINT}`\- 要生成注释的函数的返回值提示。如果在函数静态解析的过程中没有发现返回值,它被作为`void`。 * `${PARAM_DOC}`\- 参数的一个文档注释。展开为一行`@param type name`。如果要生成文档的函数不包含注释,这个变量被作为空内容。 * `${THROWS_DOC}`\- 异常的一个注释文档。被作为一行`@throws type`。如果要生成文档的函数没有抛出异常,这个变量被作为空内容。 * `${DS}`\- 一个美元(`{$}`)字符。这个变量被作为文本的美元字符(`{$}`)并被用来作为纯符号而不被作为一个变量的前缀。 * `${CARET}`\- 表明在生成文档注释之后插入符的位置。 `${CARET}`变量仅在PHP文档注释被生成和文件创建期间可用。当使用**Code | Generate | PHPDoc block**创建一个PHP文档注释,可以多选要创建文档注释的可用的函数和方法,如类、函数、方法或者字段。作为结果,PhpStorm可以“选择”要应用`${CARET}`的代码块,因此在这种情况下`${CARET}`被忽略。 4. 自定义变量。它们的名字可以在模板中用`#set`指令定义或在文件创建期间定义。 4. 要使用原本的美元富符号`$`,使用`${DS}`文件模板变量。当应用模板时,这个变量被作为一个文本美元字符(`$`)。 5. 应用改变并保存对话框。 ## **从已存在的一个创建文件模板** 1. 打开[文件模板](https://www.kancloud.cn/%E5%8F%82%E8%80%83/%E8%AE%BE%E7%BD%AE%E5%8F%82%E6%95%B0%E5%AF%B9%E8%AF%9D%E6%A1%86/%E7%BC%96%E8%BE%91%E5%99%A8/%E6%96%87%E4%BB%B6%E5%92%8C%E4%BB%A3%E7%A0%81%E6%A8%A1%E6%9D%BF.md)设置页面并切换到**Files**标签页。 2. 在工具栏点击![复制按钮](http://image.jellychen.cn/uploads/2016/11/copy.gif),并然后修改模板名称,扩展名,和所需的代码 3. 应用改变并关闭对话框。 ## **从文件创建文件模板** 1. 在编辑器中打开目标文件 2. 在主菜单,选择**Tools | Save File as Template** 3. 在打开的[文件和代码模板](https://www.kancloud.cn/%E5%8F%82%E8%80%83/%E8%AE%BE%E7%BD%AE%E5%8F%82%E6%95%B0%E5%AF%B9%E8%AF%9D%E6%A1%86/%E7%BC%96%E8%BE%91%E5%99%A8/%E6%96%87%E4%BB%B6%E5%92%8C%E4%BB%A3%E7%A0%81%E6%A8%A1%E6%9D%BF.md)对话框指定新模板名称并编辑代码,如果需要的话。 4. 应用改变并关闭对话框。 ## **创建和引用包含模板** 包含模板用来定义可重用代码块来通过`#parse`指令插入到文件模板中。内置**PHP file template**用于生成文件头和[PHP文档注释](https://www.kancloud.cn/%E5%A6%82%E4%BD%95%E4%BD%BF%E7%94%A8/%E8%AF%AD%E8%A8%80%E5%92%8C%E6%A1%86%E6%9E%B6-%E5%85%B7%E4%BD%93%E6%8C%87%E5%8D%97/PHP-%E5%85%B7%E4%BD%93%E6%8C%87%E5%8D%97/%E5%88%9B%E5%BB%BAPHP%E6%B3%A8%E9%87%8A%E6%96%87%E6%A1%A3.md)。你也可以定义自己的模板。 1. 在[文件模板](https://www.kancloud.cn/%E5%8F%82%E8%80%83/%E8%AE%BE%E7%BD%AE%E5%8F%82%E6%95%B0%E5%AF%B9%E8%AF%9D%E6%A1%86/%E7%BC%96%E8%BE%91%E5%99%A8/%E6%96%87%E4%BB%B6%E5%92%8C%E4%BB%A3%E7%A0%81%E6%A8%A1%E6%9D%BF.md)设置页面,切换到**Includes**标签页。 2. 在工具栏点击![新增](http://image.jellychen.cn/uploads/2016/11/new.png)并指定模板名称,文件扩展名,和代码。做以下之一: * 使用[预定义文件模板变量](https://www.kancloud.cn/%E5%A6%82%E4%BD%95%E4%BD%BF%E7%94%A8/%E5%B8%B8%E8%A7%84%E6%8C%87%E5%8D%97/%E6%96%87%E4%BB%B6%E5%92%8C%E4%BB%A3%E7%A0%81%E6%A8%A1%E6%9D%BF/%E6%96%87%E4%BB%B6%E6%A8%A1%E6%9D%BF%E5%8F%98%E9%87%8F.md#%E9%A2%84%E5%AE%9A%E4%B9%89%E6%A8%A1%E6%9D%BF%E5%8F%98%E9%87%8F) * 创建自定义模板变量并在包含模板中使用`#set`VTL指令定义他们的值。 例如,如果你想使用你的姓名而不是登录名(通过预定义变量`${USER}`定义的),写以下的结构: ~~~ #set( $MyName = "John Smith" ) ~~~ 如果这个变量的值没有在模板中定义,PhpStorm将在模板应用时询问你来指定它。 你可以防止在模板中美元符号`$`被作为变量前缀。如果你需要原本的美元富符号`$`,使用`${DS}`文件模板变量。当应用模板时,这个变量被作为一个文本美元字符(`$`)。 3. 要使用包含模板,切换到**Templates**标签,选择目标目标并点击**Edit** 4. 要包含一个模板,在代码中插入[#parse指令](https://www.kancloud.cn/%E5%A6%82%E4%BD%95%E4%BD%BF%E7%94%A8/%E5%B8%B8%E8%A7%84%E6%8C%87%E5%8D%97/%E6%96%87%E4%BB%B6%E5%92%8C%E4%BB%A3%E7%A0%81%E6%A8%A1%E6%9D%BF/%E8%A7%A3%E6%9E%90%E6%8C%87%E4%BB%A4.md) # 文件模板变量 在这个页面中: * [基础](https://www.kancloud.cn/ervinhua/phpstorm/441765#%E5%9F%BA%E7%A1%80) * [预定义模板变量](https://www.kancloud.cn/ervinhua/phpstorm/441765#%E9%A2%84%E5%AE%9A%E4%B9%89%E6%A8%A1%E6%9D%BF%E5%8F%98%E9%87%8F) * [自定义模板变量](https://www.kancloud.cn/ervinhua/phpstorm/441765#%E8%87%AA%E5%AE%9A%E4%B9%89%E6%A8%A1%E6%9D%BF%E5%8F%98%E9%87%8F) ## 基础 一个[文件模板](https://www.kancloud.cn/%E5%A6%82%E4%BD%95%E4%BD%BF%E7%94%A8/%E5%B8%B8%E8%A7%84%E6%8C%87%E5%8D%97/%E6%96%87%E4%BB%B6%E5%92%8C%E4%BB%A3%E7%A0%81%E6%A8%A1%E6%9D%BF/README.md)可以包含模板变量。当应用一个模板的时候,这些变量被它们的值替换。 文件模板变量是以美元符号开头的后面跟着变量名称。变量名称可能包含在花括号内。例如`$MyVariable`或`${MyVariable}` ## 预定义模板变量 PhpStorm自带一套预定义模板变量。 可用的预定义的模板变量有: * `${PROJECT_NAME}`\- 当前项目的名称 * `${FILE_NAME}`\- 将被创建的PHP文件名称 * `${NAME}`\- 在创建文件期间在新建文件对话框中指定的文件名称 * `${USER}`\- 系统的当前用户登录名称 * `${DATE}`\- 当前系统日期 * `${TIME}`\- 当前系统时间 * `${YEAR}`\- 当前年份 * `${MONTH}`\- 当前月份 * `${DAY}`\- 当前月的日期 * `${HOUR}`\- 当前时刻 * `${MINUTE}`\- 当前分钟 * `${PRODUCT_NAME}`\- 将被创建文件所在的IDE名称 * `${MONTH_NAME_SHORT}`\- 月份名称的前3个字母,例如: Jan, Feb, etc. * `${MONTH_NAME_FULL}`\- 月份全称,例如: January, February, etc. PhpStorm为[PHP包含模板](https://www.kancloud.cn/%E5%8F%82%E8%80%83/%E8%AE%BE%E7%BD%AE%E5%8F%82%E6%95%B0%E5%AF%B9%E8%AF%9D%E6%A1%86/%E7%BC%96%E8%BE%91%E5%99%A8/%E6%96%87%E4%BB%B6%E5%92%8C%E4%BB%A3%E7%A0%81%E6%A8%A1%E6%9D%BF.md)提供一组额外变量,也就是,可重用模板可以被包含到其它**PHP file template**。内置**PHP file template**用于生成文件头和[PHP文档注释](https://www.kancloud.cn/%E5%A6%82%E4%BD%95%E4%BD%BF%E7%94%A8/%E8%AF%AD%E8%A8%80%E5%92%8C%E6%A1%86%E6%9E%B6-%E5%85%B7%E4%BD%93%E6%8C%87%E5%8D%97/PHP-%E5%85%B7%E4%BD%93%E6%8C%87%E5%8D%97/%E5%88%9B%E5%BB%BAPHP%E6%B3%A8%E9%87%8A%E6%96%87%E6%A1%A3.md)。下列变量在**PHP include templates**中可用: * `${NAME}`\- PHP文档注释将被生成位置的类、字段或函数(方法)的名称。 * `${NAMESPACE}`\- 类或字段的命名空间的全称(除了开头的反斜杠)。 * `${CLASS_NAME}`\- PHP文档注释将被生成位置所在类的名称。 * `${STATIC}`\- 获取`static`如果要生成注释位置的方法或字段是静态的。否则变成一个空字符串。 * `${TYPE_HINT}`\- 要生成注释的函数的返回值提示。如果在函数静态解析的过程中没有发现返回值,它被作为`void`。 * `${PARAM_DOC}`\- 参数的一个文档注释。展开为一行`@param type name`。如果要生成文档的函数不包含注释,这个变量被作为空内容。 * `${THROWS_DOC}`\- 异常的一个注释文档。被作为一行`@throws type`。如果要生成文档的函数没有抛出异常,这个变量被作为空内容。 * `${DS}`\- 一个美元(`{$}`)字符。这个变量被作为文本的美元字符(`{$}`)并被用来作为纯符号而不被作为一个变量的前缀。 * `${CARET}`\- 表明在生成文档注释之后插入符的位置。 `${CARET}`变量仅在PHP文档注释被生成和文件创建期间可用。当使用**Code | Generate | PHPDoc block**创建一个PHP文档注释,可以多选要创建文档注释的可用的函数和方法,如类、函数、方法或者字段。作为结果,PhpStorm可以“选择”要应用`${CARET}`的代码块,因此在这种情况下`${CARET}`被忽略。 ## 自定义模板变量 除了预定义的模板变量,也可以指定自定义变量。如果需要,你可以定义自定义变量的值到一个模板使用`#set`VTL指令。 例如,如果你想使用你的姓名而不是登录名(通过预定义变量`${USER}`定义的),写以下的结构: ~~~ #set( $MyName = "John Smith" ) ~~~ 如果这个变量的值没有在模板中定义,PhpStorm将在模板应用时询问你来指定它。 你可以防止在模板中美元符号`$`被作为变量前缀。如果你需要原本的美元富符号`$`,使用`${DS}`文件模板变量。当应用模板时,这个变量被作为一个文本美元字符(`$`)。