php - php 包的文档?

标签 php phpdoc

所以在文件夹 PayPal 中我有多个使用他们的 API 的类。

我想制作一份文档,说明如何按顺序使用所有类。所以这是我的问题:

  1. 我如何为他们创建一个包?因为在每个类上面我都使用了 phpdoc 标签@package PayPal。 php中的包只是一个文件夹吗?

  2. 我应该把包的文档放在哪里?有这方面的最佳做法吗?名为 ... 的文件夹中的文件?

  3. 如何放置特定于类或包的示例,例如。第 1 步 bla bla,第 2 步 bla bla? 谢谢!

最佳答案

您可以在单独的文件中为多个类使用相同的包注释。 PHP Documentor 将收集它们,并在创建 API 文档时,将具有相同包注释的文件分组。

例如http://framework.zend.com/svn/framework/standard/trunk/library/Zend/Validate.php

/**
 * @category   Zend
 * @package    Zend_Validate
 * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
 * @license    http://framework.zend.com/license/new-bsd     New BSD License
 */
class Zend_Validate implements Zend_Validate_Interface

http://framework.zend.com/svn/framework/standard/trunk/library/Zend/Validate/Alnum.php

/**
 * @category   Zend
 * @package    Zend_Validate
 * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
 * @license    http://framework.zend.com/license/new-bsd     New BSD License
 */
class Zend_Validate_Alnum extends Zend_Validate_Abstract

两者都是独立的文件,但属于 Zend_Validate 包。因此,在 http://framework.zend.com/apidoc/core/您会发现它们被分组在同一个包中。

您还可以使用子包将其他类分组到普通包下。例如http://framework.zend.com/svn/framework/standard/trunk/library/Zend/Validate/Sitemap/Lastmod.php

/**
 * Validates whether a given value is valid as a sitemap <lastmod> value
 *
 * @link       http://www.sitemaps.org/protocol.php Sitemaps XML format
 *
 * @category   Zend
 * @package    Zend_Validate
 * @subpackage Sitemap
 * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
 * @license    http://framework.zend.com/license/new-bsd     New BSD License
 */
class Zend_Validate_Sitemap_Lastmod extends Zend_Validate_Abstract

查看上面链接的 API 文档,了解它在生成时如何显示。

您不记录包注释。注释仅用于在逻辑上将概念上属于一起的类或文件分组。如果您想要一个包描述,请将其写入包中最合适的文件或创建一个单独的文件并为其提供与该包中的其他文件/类相同的注释。

对于包的使用示例,您可以使用示例注释链接包含示例的文件,或者简单地将它们与 DocBlock 中的代码标记内联。如果您使用单独的文件来记录您的包,您可以将它们插入那里。

/**
 * MyLib
 *
 * Files under the MyLib package do foo and bar. They are baz.
 * 
 * Usage Examples of MyLib classes
 * <code>
 * $foo = new Foo;
 * $foo->doSomething()
 * </code>
 *
 * @package MyLib
 *
 * @example /some/path/to/an/example/file 
 */

关于php - php 包的文档?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2591769/

相关文章:

php - 原则插入看不到外键字段

php - 如何使用 phpDocumentor、教程/扩展文档编写代码块?

php - 在 PhpDocumentor 2 中使用 @package 而不是命名空间

php - 使用 PEAR 安装 phpDocumentor

php - 将具有 NULL 字符的内存块从 C 传输到 PHP 程序

javascript - ExtJs 4 多选编辑表单不加载选择

php - phpDoc 中是否可以自定义标签?

php - 如何在 PHP 中记录静态类属性

javascript - 幻灯片放映,显示图像标题(然后为其设置动画)

javascript - 单选按钮/复选框未使用 AJAX 输入 MySQL DB