15

チュートリアル/拡張ドキュメントの作成中に phpDocumentor を使用してコード ブロックを作成する方法は?

タグ<programlisting>を生成できますが、<code>その内容を解析しません。

<refentry id="{@id}">  

 <refnamediv>  
  <refname>Guide for MyApp</refname>  
  <refpurpose>To demonstrate ...</refpurpose>  
 </refnamediv>  

 <refsynopsisdiv>  
  <author>  
   My Name
   <authorblurb>  
    {@link mail@mail.com My Name}  
   </authorblurb>  
  </author>  
 </refsynopsisdiv>  

 {@toc}  
 <refsect1 id="{@id intro}">  
  <title>User Guide for MyApp</title>  

  <para>  
   Some Description
  </para>

      <programlisting>

            $some = 'code';

      </programlisting>

 </refsect1>
</refentry>
4

3 に答える 3

4

方法がわかれば、これは実際には非常に簡単です。要素にrole属性を設定するだけです。programlisting

<programlisting role="php">
  $some = 'code';
</programlisting>

これについては、リリース ノートに簡単に記載されている以外、どこにも文書化されていませんでしたが、コードを見ると、次の 4 つの役割がサポートされているようです。

  1. php - PHP 構文の強調表示をコンテンツに追加し、すべての行に行番号を含めます。
  2. チュートリアル- コンテンツに HTML 構文の強調表示を追加し、すべての行に行番号を含めます。
  3. xml - コンテンツの周りにタグを追加しpreますが、構文の強調表示や行番号はありません。
  4. html - コンテンツを生の HTML として扱うため、好きなマークアップを使用できます。

ただし、山かっこを使用する場合は常に、これらの文字をエスケープするか、コンテンツを CDATA セクションでラップする必要があります。これは、生の HTML を使用する場合にも当てはまります。そうでない場合、パーサーはコンテンツを XML として解釈しようとします。

たとえば、生の HTML サンプルは次のようになります。

<programlisting role="html">
  <![CDATA[
    <b>This sentence will be bold.</b>
  ]]>
</programlisting>

また、これはすべてphpDocumentorの初期バージョンに適用されることに注意してください。私が知る限り、新しいバージョン ( phpDocumentor 2 ) はチュートリアル/拡張ドキュメントをサポートしていないようです。

于 2013-05-28T22:16:36.140 に答える
4

確認したところ、javascriptMVC ドキュメンテーション ツールを使用できると思います。ドキュメンテーション ツールだと思います。
そのデモはこちらです。これを試してみることをお勧めします。(-:

これは /i である javascriptMVC の documentJs の出力です。または少なくとも私は願っています.(-: ここに画像の説明を入力



そしてphpDocumentorについて私が言ったように、あなたが何を意味するのかを理解するためにいくつかの説明が必要ですが、今のところこれらを確認してください. リンク1link2 . (以下が必要な場合)。

 /** @type int This is a counter. */
 $int = 0;

 // there should be no docblock here
 $int++;

または:

 /**
  * This class acts as an example on where to position a DocBlock.
  */
 class Foo
 {
     /** @type string|null Should contain a description if available */
     protected $description = null;

     /**
      * This method sets a description.
      *
      * @param string $description A text with a maximum of 80 characters.
      *
      * @return void
      */
     public function setDescription($description)
     {
         // there should be no docblock here
         $this->description = $description;
     }
 }

もう 1 つの例は、変数を foreach で明示的に文書化することです。多くの IDE は、この情報を使用してオートコンプリートを支援します。

 /** @type \Sqlite3 $sqlite */
 foreach($connections as $sqlite) {
     // there should be no docblock here
     $sqlite->open('/my/database/path');
     <...>
 }
于 2013-05-01T06:43:19.103 に答える
-2

選択したプロジェクト ドキュメントを自動的に生成できる zend studio ツールを使用できます。

于 2013-05-02T05:47:26.257 に答える