Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/257.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我是否应该使用引发异常的函数将PHPDoc中的@throws添加到函数中? 例如考虑以下代码: /** * @param array $array * @param string $key * @return mixed * @throws \InvalidArgumentException */ private function getArrayEntry(& $array, $key) { if (!array_key_exists($key, $array)) { throw new \InvalidArgumentException( 'Invalid array of values for location. Missing '.$key.'.' ); } return $array[$key]; } /** * @param array $data * @return Location */ public function createFromArray(array $data) { $this->getArrayEntry($data, 'name'); }_Php_Phpdoc - Fatal编程技术网

我是否应该使用引发异常的函数将PHPDoc中的@throws添加到函数中? 例如考虑以下代码: /** * @param array $array * @param string $key * @return mixed * @throws \InvalidArgumentException */ private function getArrayEntry(& $array, $key) { if (!array_key_exists($key, $array)) { throw new \InvalidArgumentException( 'Invalid array of values for location. Missing '.$key.'.' ); } return $array[$key]; } /** * @param array $data * @return Location */ public function createFromArray(array $data) { $this->getArrayEntry($data, 'name'); }

我是否应该使用引发异常的函数将PHPDoc中的@throws添加到函数中? 例如考虑以下代码: /** * @param array $array * @param string $key * @return mixed * @throws \InvalidArgumentException */ private function getArrayEntry(& $array, $key) { if (!array_key_exists($key, $array)) { throw new \InvalidArgumentException( 'Invalid array of values for location. Missing '.$key.'.' ); } return $array[$key]; } /** * @param array $data * @return Location */ public function createFromArray(array $data) { $this->getArrayEntry($data, 'name'); },php,phpdoc,Php,Phpdoc,第二种方法是否也应该在doc bloc中包含@throws 与存在“throws”关键字的Java相比,它是如何使用的?@throws应该只放在抛出异常的方法的docBlock中。 如果你把它放在堆栈上,它将是多余的,这将违反原则 在java中,您可以在@throws和@exception之间进行选择。请参阅 顺便说一下:您抛出了错误类型的异常。你应该扔一个球。否则就违反了法律。 用于意外的参数类型。感谢Mamuz提供的宝贵提示!在这里我一般同意Mamuz,尽管我也会考虑DOC阅读器只会看到公共

第二种方法是否也应该在doc bloc中包含@throws


与存在“throws”关键字的Java相比,它是如何使用的?

@throws应该只放在抛出异常的方法的docBlock中。 如果你把它放在堆栈上,它将是多余的,这将违反原则

在java中,您可以在@throws和@exception之间进行选择。请参阅

顺便说一下:您抛出了错误类型的异常。你应该扔一个球。否则就违反了法律。
用于意外的参数类型。

感谢Mamuz提供的宝贵提示!在这里我一般同意Mamuz,尽管我也会考虑DOC阅读器只会看到公共CeaReFracMayRayer()而不是私有GETARRAYEnCENTY()的说法,因此只有在公共方法的DOBCULD中才能显示给API读者的关于抛出异常的唯一方法。