钢琴/配件

本包最新版本(0.2)的许可证信息不可用。

通过注解创建getter和setter方法的创建者!

0.2 2016-05-30 16:16 UTC

This package is auto-updated.

Last update: 2024-08-28 11:01:34 UTC


README

Build Status Latest Stable Version

钢琴配件

本包允许我们仅通过使用少量注解来创建getter和setter。

安装

composer require piano/accessor

用法示例

查看示例

User

<?php

namespace App;

class User
{
    private $name;
    private $age;
    private $createdAt;

    public function setName($name)
    {
        $this->name = $name;
    }

    public function setAge($age)
    {
        $this->age = (int) $age;
    }

    public function setCreatedAt(\DateTime $createdAt)
    {
        $this->createdAt = $createdAt;
    }

    public function getName()
    {
        return $this->name;
    }

    public function getAge()
    {
        return (int) $this->age;
    }

    public function getCreatedAt()
    {
        return $this->createdAt;
    }
}

与以下 User 类相同

<?php

namespace App;

class User
{
    use \Piano\AccessorTrait;

    /**
     * @set
     * @get
     */
    private $name;

    /**
     * @set int
     * @get int
     */
    private $age;

    /**
     * @set \DateTime
     * @get
     */
    private $createdAt;
}

如您所见,在定义 @set 时可以指定类型提示或类型转换,在定义 @get 时也可以指定类型转换。但这不是必需的。

如下所示

对于 @set,任何其他值都将被解释为类型提示。