我应该如何使用PHPDoc来记录一个方法;不';“t扔”吗;?

我应该如何使用PHPDoc来记录一个方法;不';“t扔”吗;?,php,exception-handling,phpdoc,Php,Exception Handling,Phpdoc,下面这节课是我指的一个人为的例子。如果向此类中的get方法传递了错误的id,则该方法将引发异常,该id记录在它的phpdoc块中。另外两个方法getApple&getBanana永远不会引发异常,因为我们知道这些ID存在 不幸的是,PHPStorm仍然会抱怨未处理的异常,向这些方法添加@throws标记似乎是在撒谎,因为它们不可能抛出异常 有没有办法记录这个场景 示例类 类水果 { 常数苹果=1; 常数香蕉=2; /** *@返回字符串 */ 公共函数getApple():字符串 { retur

下面这节课是我指的一个人为的例子。如果向此类中的
get
方法传递了错误的id,则该方法将引发异常,该id记录在它的phpdoc块中。另外两个方法
getApple
&
getBanana
永远不会引发异常,因为我们知道这些ID存在

不幸的是,PHPStorm仍然会抱怨未处理的异常,向这些方法添加
@throws
标记似乎是在撒谎,因为它们不可能抛出异常

有没有办法记录这个场景

示例类

类水果
{
常数苹果=1;
常数香蕉=2;
/**
*@返回字符串
*/
公共函数getApple():字符串
{
return$this->get(self::APPLE);
}
/**
*@返回字符串
*/
公共函数getBanana():字符串
{
返回$this->get(self::BANANA);
}
/**
*@param int$fructid
*@返回字符串
*@notfoundexception
*/
公共函数get($fructId):字符串
{
开关($FROUTID){
case self::苹果:
返回“苹果!”;
case self::香蕉:
返回“香蕉!”;
违约:
抛出新的FruitNotFoundException();
}
}
}

无论是
getApple()
还是
getBanana()
都使用可能引发异常的
$this->get()
方法,因此使用这些方法中的任何一种都可能导致引发异常。

是的,我理解这一点。但是,这些方法不可能抛出异常,因为我们可以看到代码的路径。它们传递的ID是正确的。有可能引发异常,例如,当您更改传递到
get()
的ID时,或者如果从
开关中删除了其中一个案例。我同意在当前状态下不会抛出异常,但是
@throws
表示在某些情况下可以抛出异常。请记住,您可以提供描述来描述这些情况。