[英]Variable type hinting in Netbeans and PHPStorm
我在一家員工都使用PHPStorm和Netbeans 8的公司工作。在我們最近開始為我們的代碼添加更多類型提示之前,我們一直都很好。
在PHPStorm中正確使用類型提示的方法就像這樣
/** @var MyAwesomeClass $theObject */
$theObject = $orm->getMyAwesomeObject();
這是有道理的,因為記錄函數的正確方法是
/**
* @param MyAwesomeClass $awesomeObjectArgument
* @param boolean $booleanArgumentsAreSilly
*/
但是netbeans就是這樣的
/** @var $theObject \Full\Freeking\Namespace\With\Leading\Backslash\MyAwesomeClass */
這是一個問題,因為參數的順序(對@var表示法)是相反的,而Netbeans使用PHPStorm不支持的前導斜杠。
有沒有人知道如何配置這些IDE中的任何一個使用相同的標准,因為目前只有一半的代碼具有工作自動完成功能。 對我來說,Netbeans中的實現似乎是不必要的,並且與PHPDocs標准(基於@param表示法)相沖突。
更新:我錯了,PHPStorm實際上與Netbeans表示法兼容,但不是相反。 意思是我的問題沒有完全解決。 我仍然需要找到一種方法來配置兩個IDE來生成在兩者中都有效的文檔。
這是一個問題,因為參數的順序(對@var表示法)是相反的,而Netbeans使用PHPStorm不支持的前導斜杠
這不是真的。
1. PhpStorm支持兩個命令( @var [type] [variable]
以及@var [variable] [type]
)
2. PhpStorm支持PHPDoc注釋( /** @var ...
)以及普通塊注釋( /* @var ...
)
3. PhpStorm支持FQN - 這很好用: /** @var $theObject \\Full\\Namespace\\MyAwesomeClass */
盡管ashazg斷言沒有類型提示的PHPDoc標准,但http://phpdoc.org/docs/latest/references/phpdoc/tags/var.html上的官方文檔確實說明typehint應該在變量名之前,並且在文檔中沒有提到這個命令只是一個建議,任何人都可以使用他們自己的訂單。
此外,這種做法與大多數其他強類型語言一致,例如Java(public int speed)或C(int speed)。 因此,Netbeans不支持PHPDoc文檔中正確的typehint順序這一事實導致了很多痛苦。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.