2017-09-06 12 views
1

PSRで、クラスと名前空間に関するコメントをどこに置くべきかについては何も言いません。それはクラスまたは名前空間の最初の説明ですか?クラスの説明を使用するためのPSR

<?php 
/** 
* Some description about this class 
* 
* @author  Mr. Anderson 
* @since  06/09/17 
* @package 
* 
*/ 

namespace MyNamespace; 

class MyClass 
{ 
} 

それとも正しくは?

<?php 

namespace MyNamespace; 

/** 
* Some description about this class 
* 
* @author  Mr. Anderson 
* @since  06/09/17 
* @package 
* 
*/ 

class MyClass 
{ 
} 
+0

PSRは[phpdoc](https://www.phpdoc.org/)には該当しません。 'class'キーワードの直前に置いておきます。 – apokryfos

答えて

3

PSRはこれとは関係ありません。 PSRはdocblockについて何も言わない。あなたのコメントはphpdocによって処理されている方法です本当に重要

<?php 
/** 
* Some description about this class 
* 
* @author  Mr. Anderson 
* @since  06/09/17 
* @package 
* 
*/ 

namespace MyNamespace; 

class MyClass 
{ 
} 

はあなたのように扱われているがファイルにコメントを持っているが、正確なクラスMyClassにコメントしていませんしたがって、ドキュメンテーションを生成した後、クラス記述がないというエラーが発生します。第2のケースで

<?php 

namespace MyNamespace; 

/** 
* Some description about this class 
* 
* @author  Mr. Anderson 
* @since  06/09/17 
* @package 
* 
*/ 

class MyClass 
{ 
} 

phpdocクラスMyclassへのコメントとしてのdocblockを検討しますが、完全なファイルにコメントを見つけることができません。したがって、ドキュメントを生成した後もエラーは発生します。

しかし、これらのアプローチの両方で、クラスの説明、次にファイルの説明がある方がよいため、2番目の方法を選択します。

+0

@u_mulderが暗示しているように、phpDocumentorはファイルレベルのdocblock(彼の最初の例)*とクラスレベルのdocblock(彼の2番目の例)を見ています。 ..だから私は両方を使用することをお勧めします。名前空間自体を具体的に文書化したい場合、そのdocblockは、ファイルレベルのdocblockの後に、名前空間の行の前に来る必要があります。 – ashnazg

関連する問題