8
例如,請考慮下面的代碼:我應該將PHPDoc中的@throws添加到使用拋出異常的函數的函數中嗎?
在DOC集團也/**
* @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');
}
如果第二種方法有拋出:?
如何將它與帶有'throws'關鍵字的Java相比較?
謝謝你親切的Mamuz爲偉大的提示! –
我通常在這裏同意Mamuz,但我也會考慮文檔讀者只會看到公共createFromArray()而不是私人getArrayEntry()的觀點,所以只有這樣才能向API讀者傳達有關拋出的異常將顯示在公共方法的docblock中。 – ashnazg