以下是PhpStorm中PHP注释的规范指南,结合PHPDoc标准及PhpStorm特性,分点说明:
基本语法
以/**开头,每行以*开始,对齐星号,以*/结束。
示例:
/** * 计算两数之和 */
常用标签
@param: 描述参数类型及用途。
@param int $num1 第一个数字 @param string|null $name 可选参数
@return: 返回值类型及说明。
@return float 返回计算结果
@throws: 抛出异常类型及条件。
@throws InvalidArgumentException 参数无效时抛出
@var: 类属性或变量类型提示。
/** @var \App\Models\User $user */
@deprecated: 标记弃用,建议替代方案。
@deprecated 1.0.0 请使用newMethod()代替
类与方法注释
类注释包含描述、作者、版本等:
/**
* 用户管理类
* @package App\Services
* @author John <john@example.com>
*/class UserService {}方法注释示例:
/**
* 用户登录验证
* @param string $username 用户名
* @param string $password 密码
* @return bool 验证成功返回true
* @throws LoginException 登录失败时抛出
*/public function login($username, $password) {}单行注释
使用//后跟空格,注释在代码右侧或上方。
// 验证用户权限
if ($hasAccess) {
$user->login();// 登录操作
}多行注释
避免/* */,优先用//或PHPDoc块。
// 此处需要优化 // 因性能问题暂时禁用缓存 // 待后续重构
自动生成注释
输入/**后回车,自动生成模板。
快捷键:Alt + Enter(在方法名上)生成/更新注释。
类型推断与提示
使用@var为动态属性添加类型提示:
/** @var \App\Models\User $user */ $user = User::find(1);
清晰简洁
避免冗余注释,如// 设置名字为John,代码自解释时无需注释。
及时更新
修改代码后同步更新注释,避免误导。
任务标记
使用TODO/FIXME标注待办事项:
// TODO: 添加异常处理 // FIXME: 修复边界条件问题
IDE配置
调整代码风格:Settings -> Editor -> Code Style -> PHP设置注释格式。
/**
* 用户服务类
* @package App\Services
*/
class UserService {
/** @var UserRepository 用户仓库实例 */
private $userRepo;
/**
* 根据ID获取用户
* @param int $userId 用户ID
* @return User|null 用户对象或null
* @throws DatabaseException 数据库错误时抛出
*/
public function getUser($userId) {
// 检查ID有效性
if ($userId <= 0) {
return null;
}
/** @var User $user */
$user = $this->userRepo->find($userId);
// TODO: 添加缓存机制
return $user;
}
}遵循这些规范可提升代码可读性,并充分利用PhpStorm的智能提示和自动化功能。
最新评论: