带有 php activerecord 的 Phpdoc 文档

Phpdoc documentation with php activerecord

我正在使用 php-activerecord for a short while now and i absolutely love it. Php-activerecord is an open source ORM library based on the ActiveRecord pattern. However, i also like phpdoc 并用它来记录我的代码。因此,我的同事很容易理解我构建的平台。但是使用 php-activerecord 我的模型 类 现在看起来像这样:

/**
 * The Company class.
 *
 * @since 1.0.0
 *
 */
class Company extends \ActiveRecord\Model
{
    /** explicit table name since our table is not "company"  */
    static $table_name = 'Company';

    /** explicit pk since our pk is not "id" */
    static $primary_key = 'companyId';
}

它们有效,但它们以前看起来像这样:

/**
 * The Company class.
 *
 * @since 1.0.0
 *
 */
class Company extends \ActiveRecord\Model
{
    /** @var integer The company id. */
    private $companyId;

    /** @var string The company name. */
    private $name;
}

长话短说

使用 php-activerecord 无法记录我的模型属性和更新 phpdoc。我希望能够做到这一点,我应该看什么方向?

您可以将所有 "magic" 属性记录为 @property!假设你有一个 table "Company" 字段 "id, name, location",你最终会得到:

**
 * @property int $id
 * @property string $name
 * @property string $location
 */
class Company extends \ActiveRecord\Model 
{

}

你可以看到in the documentation还有一些其他的技巧,比如"property-read"。我将它们用于您可能拥有的任何连接,例如,您可以阅读有一个连接,但不能为这些连接编写模型。

因此,如果公司有您定义为 $employees 的员工,您可以添加

* @property-read Employee[] $employees

等等。