PhpStorm 需结合 PHPDoc 规范注释、phpDocumentor 生成 HTML、Swagger-PHP 导出 OpenAPI、插件预览及 wkhtmltopdf/Pandoc 转换 PDF/Markdown 来完成接口文档全流程。

如果您在 PhpStorm 中开发 PHP 项目,希望自动生成符合标准的接口文档,则需借助内置工具链与外部文档生成器协同工作。以下是完成 PHP 接口文档创建与导出的具体步骤:
一、启用 PHPDoc 注释模板并规范编写注释
PhpStorm 本身不直接生成完整 API 文档,但能智能补全和校验 PHPDoc 标准注释,这是后续文档生成的基础。确保所有类、方法、参数、返回值均按 PHPDoc 规范标注,否则外部工具无法正确解析。
1、将光标置于函数名上方,按下 Alt + Enter(Windows/Linux)或 Option + Enter(macOS),选择 “Add PHPDoc block”。
2、在生成的 PHPDoc 块中,手动补充 @param、@return、@throws 等标签,例如:/** @param string $name 用户姓名 @return array
立即学习“PHP免费学习笔记(深入)”;
3、对控制器方法或 API 入口函数,添加 @api 或 @endpoint 类自定义标签(需配合第三方解析器识别)。
二、使用 phpDocumentor 工具生成 HTML 文档
phpDocumentor 是主流的 PHP 文档生成器,支持从 PHPDoc 注释提取结构化信息并输出为可浏览的 HTML 页面。需在项目根目录下配置其配置文件并执行命令行构建。
1、通过 Composer 在项目中安装 phpDocumentor:composer require --dev phpdocumentor/phpdocumentor。
2、运行初始化命令生成默认配置文件:vendor/bin/phpdoc -c phpdoc.xml --initialize(Windows 下为 vendor\bin\phpdoc.bat)。
3、编辑生成的 phpdoc.xml,在 节点内指定源码路径,例如: 中保留 HTML 输出配置。
4、执行文档生成:vendor/bin/phpdoc -c phpdoc.xml,成功后文档将输出至 output/ 目录。
三、集成 Swagger-PHP 实现 OpenAPI 格式导出
若需生成兼容 Swagger UI 或 Redoc 的 OpenAPI(Swagger)规范文档,应使用 swagger-php 库,它将 PHPDoc 扩展为 OpenAPI 描述,并支持 JSON/YAML 导出。
1、安装 swagger-php:composer require --dev zircote/swagger-php。
2、在 API 方法上方添加 @OA\Get、@OA\Post 等 OpenAPI 注解,例如:/** @OA\Get(path="/users", @OA\Response(response="200", description="用户列表")) */。
3、在终端中执行命令生成 OpenAPI JSON 文件:./vendor/bin/openapi src/ -o api-spec.json。
4、将生成的 api-spec.json 文件导入 Swagger UI 或使用 swagger-cli validate 验证格式有效性。
四、利用 PhpStorm 插件快速预览 PHPDoc 内容
PhpStorm 自带 PHPDoc 快速查看能力,虽不生成独立文档文件,但可在编码过程中即时验证注释完整性与语义准确性,提升文档质量控制效率。
1、将鼠标悬停在任意已标注 PHPDoc 的函数、类或属性上,等待几秒弹出悬浮窗口。
2、在悬浮窗口中确认 @param 类型与实际签名一致,@return 类型未缺失,且无红色波浪线警告。
3、按 Ctrl + Q(Windows/Linux)或 F1(macOS)调出 Quick Documentation 面板,滚动查看完整注释内容及继承关系说明。
五、导出为 PDF 或 Markdown 格式文档
phpDocumentor 默认仅输出 HTML,如需 PDF 或 Markdown,需借助中间转换流程:先生成 HTML,再通过 Pandoc 或 wkhtmltopdf 进行格式转换。
1、确保已安装 wkhtmltopdf(Linux/macOS 可用 Homebrew 或 apt 安装;Windows 需下载二进制包并加入 PATH)。
2、进入 phpDocumentor 输出目录(如 output/html),执行:wkhtmltopdf index.html api-docs.pdf。
3、若需 Markdown,先用浏览器打开 index.html,复制主体内容粘贴至支持 HTML 转 Markdown 的在线工具,或使用 pandoc -f html -t markdown input.html -o output.md 命令转换。











