php bir paket için dokümantasyon?

1 Cevap php

yani bir klasör PayPal ben kendi API kullanarak için birden fazla sınıflar var.

i sıralı şekilde tüm sınıfları kullanmak için nasıl bir dokümantasyon yapmak istiyorum. işte benim sorular:

  1. nasıl ben onlar için bir paket oluşturmak mı? i phpdoc etiketi @ paketi PayPal kullanılan her sınıfın üstünde neden olur. php bir paket sadece bir klasör?

  2. Burada i paketinin belgelerine koymak? Bunun için en iyi yöntem vardır? adlı klasördeki bir dosya ...?

  3. how to put class- or package-specific examples, eg. step 1 bla bla, step 2 bla bla? thanks!

1 Cevap

Sen ayrı dosyalarda birden fazla sınıflar için aynı paket açıklamaları olabilir. PHP Documentor bunları toplamak ve API Dokümanlar oluştururken, grup aynı paket açıklama ile dosyaları.

Örneğin 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

ve 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

Her ikisi de ayrı dosyalar, ancak Zend_Validate paketine aittir. Böylece, üzerine http://framework.zend.com/apidoc/core/ onları aynı paket halinde gruplandırılmış bulabilirsiniz.

Ayrıca normal bir paket altında grup ek sınıflara subpackages olabilir. Örneğin 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

Oluşturulan zaman gösterir nasıl görmek için yukarıda bağlantılı API dokümanlar bakın.

Sen paket açıklamaları belge yok. Açıklama sadece conceptuially birbirine ait mantıksal grup sınıf veya dosyaları için kullanılır. Eğer bir paket açıklaması sahip olmak istiyorsanız, paketin en uygun dosyaya ya yazmak veya ayrı bir dosya oluşturmak ve bu paketin diğer dosyaları / sınıfları gibi o aynı notunu verir.

Paket kullanım örnekleri için, örnek açıklama örnekleri içeren dosyaları bağlamak ya da sadece bilgilendirme kısmı kod etiketleri ile inline bunları yazmak. Eğer paketleri belgelemek için ayrı bir dosya kullanıyorsanız, onları orada eklemek olabilir.

/**
 * 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 
 */