[英]PHPDoc optional parameter
這里有兩個類似的問題,但是沒有一個答案似乎有效。
PHPDoc似乎沒有將我的函數中的可選參數識別為可選參數,例如:
/**
* Opens the connection and sets encoding
*
* @param string $encoding Encoding.
*/
public function __construct($encoding='UTF-8')
{
$this->connect_mysqli();
$this->set_encoding_mysqli($encoding);
}
它不應該認為$ encoding是可選的,或者我在這里遺漏了什么? 我真的試着谷歌並閱讀文檔,但我找到的只是:
如果你沒有在實際代碼中指出參數是可選的(通過“$ paramname ='默認值'”),那么你應該在參數的描述中提到參數是可選的。
所以我看到我的代碼沒有問題,但我在文檔中得到的是:“__ construct(string $ encoding)”,在參數是可選的任何地方都沒有任何符號。
嚴格來說,PHP不知道“可選參數”,而是具有默認值的參數,可以在調用函數或方法時省略。 好的,那是最后一個可選參數,但你的
@param string $encoding Encoding.
這里完全正確,因為默認值是一個字符串。 文檔試圖告訴你的是你應該自己提一下
@param string $encoding (optional) Encoding.
我同意你的觀點,比如說
__construct([$encoding])
要么
__construct($encoding = 'UTF-8')
會好的。 您可以發布錯誤報告
https://github.com/phpDocumentor/phpDocumentor2/issues?state=open
更新:已實現,這已經提到了https://github.com/phpDocumentor/phpDocumentor2/search?q=optional&type=Issues
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.