php - 如何在 symfony 2 php 中访问注释中的类变量和常量

标签 php symfony doctrine-orm

我有这样的课:

class Student {

const GENDER_MALE = "male", GENDER_FEMALE = "female";
/**
 * @var string $gender
 *
 * @ORM\Column(name="gender", type="string", length=50,nullable=false)
 * @Assert\NotBlank(message="Gender cannot be blank",groups={"new"})
 * @Assert\Choice(choices = {"male", "female"}, message = "Choose a valid gender.", groups={"new"})
 */
private $gender;

我必须对值 "male""female" 进行硬编码。有可能做这样的事情吗?

choices = {self::GENDER_MALE, self::GENDER_FEMALE}

最佳答案

这是 Doctrine2 Annotation Reader (Constants) 的一个特征.

你的解决方案:

class Student
{
    const GENDER_MALE = "male", GENDER_FEMALE = "female";

    /**
     * @var string $gender
     *
     * @ORM\Column(name="gender", type="string", length=50,nullable=false)
     * @Assert\NotBlank(message="Gender cannot be blank",groups={"new"})
     * @Assert\Choice(
     *      choices = {
     *          Student::GENDER_FEMALE: "Female",
     *          Student::GENDER_MALE: "Male"
     *      },
     *      message = "Choose a valid gender.", groups={"new"}
     * )
     */
    private $gender;
}

关于php - 如何在 symfony 2 php 中访问注释中的类变量和常量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30670117/

相关文章:

symfony - 如何在服务中获取当前登录的用户

php - 使用 Symfony 3 Forms 插入 DateType 字段时出现问题

PHP、Yii - 未知属性异常

php - 如何使用 PHP 检索列表中目录中的文件

PHP 在每年的 6 月结束一个财政年度

symfony - 为什么 Symfony2 的请求和响应类中没有 set/getHeader

json - 使用 GetSetMethodNormalizer 将 Doctrine 实体转为 Json 返回 fatal error

php - Symfony2 Doctrine - 数据库 - 防止同时访问?

php - 使用 Doctrine 比较日期时间之间的日期

php - 检查 select 语句是否包含文本,然后用另一个文本更改它