2012-08-09 13 views
6

phpDocumentorのこのメソッドの戻り値の型を文書化する適切な方法はどれですか?phpDocumentorの配列データ型を表す適切な方法は?

方法1:

/** 
* @return array Foo array. 
*/ 
public function foo() { 
    return array(1, 2, 3); 
} 

方法2:

/** 
* @return integer[] Foo array. 
*/ 
public function foo() { 
    return array(1, 2, 3); 
} 

また、方法のいずれかから任意のIDEへの影響はありますか?

編集:

PhpStormとNetbeansの両方7.1+のIDEは、第二の方法をサポートすることが表示されます。

答えて

11

どちらの方法が技術的に正しいですが、それは、より具体的な(intintegerは交換可能です)ですので、この1が 'より良い' とみなされます。ここで文書化

@return int[] 

:で

http://www.phpdoc.org/docs/latest/guides/types.html

+0

ありがとうございます!私はこれを逃したとは信じられません。私はこれを正解とマークしたいが、セクション1.4.4では、リストにある構文が正しいと答えているが、答えは2番目のものだけが正しいと書かれていることを除いては、2番目が正しい(2番目が間違いなくIMHOだが)。 – FtDRbwLXw6

+0

どちらも正しいですが、より具体的であるため、この方が「より良い」と考えられています。 int/integerは入れ替え可能です。 – Evert

+0

@drrcknlsn:編集に時間がかかりましたことを感謝します。 – Evert

4

この答えを書く瞬間、これは配列を表すphpDocumentor(おそらく他のPHPDocの実装)の受け入れられた方法です:

  1. 不特定、示される配列の内容のない定義が を与えられていません。例:@return array

  2. は、単一タイプを含む指定された、Type定義は、各配列要素のタイプの リーダーに通知します。指定された配列の要素として期待されるのはTypeであり、 です。 例:@return int[]

    mixedもシングルタイプで、このキーワードでそれ は、各配列要素は、すべての可能な タイプが含まれていることを示すことが可能であることに注意してください。

  3. を複数種類にを含む指定された、Type定義は、各配列要素のタイプの リーダーに通知します。各要素は、指定された型の任意の にすることができます。例:@return (int|string)[]
関連する問題