Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 在条令和Symfony上的实体中,按类名和id字段加载其他实体_Php_Symfony_Orm_Doctrine Orm_Doctrine - Fatal编程技术网

Php 在条令和Symfony上的实体中,按类名和id字段加载其他实体

Php 在条令和Symfony上的实体中,按类名和id字段加载其他实体,php,symfony,orm,doctrine-orm,doctrine,Php,Symfony,Orm,Doctrine Orm,Doctrine,我正在寻找以下案例的方法。我有一个实体,它保存关于其他实体的信息,这些实体可以是任何类型的实体。子实体由字段组合subject\u class和subject\u id识别。有没有一种方法可以让我在获取父实体时自动获取子实体 父实体示例: <?php namespace Yolo\RandomBundle\Entity; use Doctrine\ORM\Mapping as ORM; /** * @ORM\Entity * @ORM\Table( * uniqueC

我正在寻找以下案例的方法。我有一个实体,它保存关于其他实体的信息,这些实体可以是任何类型的实体。子实体由字段组合
subject\u class
subject\u id
识别。有没有一种方法可以让我在获取父实体时自动获取子实体

父实体示例:

<?php

namespace Yolo\RandomBundle\Entity;

use Doctrine\ORM\Mapping as ORM;

/**
 * @ORM\Entity
 * @ORM\Table(
 *      uniqueConstraints={
 *          @ORM\UniqueConstraint(columns={"subject_id", "subject_class"})
 *      }
 * )
 */
class SwagRelation
{
    /**
     * @var int
     *
     * @ORM\Id
     * @ORM\Column(type="integer")
     * @ORM\GeneratedValue(strategy="AUTO")
     */
    private $id;

    /**
     * @var string
     *
     * @ORM\Column(type="string")
     */
    private $subjectClass;

    /**
     * @var string
     *
     * @ORM\Column(type="integer")
     */
    private $subjectId;

    /**
     * @var object
     */
    private $subject;

    /**
     * @return int
     */
    public function getId()
    {
        return $this->id;
    }

    /**
     * @return object
     */
    public function getSubject()
    {
        // Here should be returned an entity got from subject class and id!
        return $this->subject;
    }

    /**
     * @param object $subject
     *
     * @return SwagRelation
     */
    public function setSubject($subject)
    {
        $this->subject = $subject;
        $this->subjectClass = get_class($subject);
        $this->subjectId = $subject->getId();

        return $this;
    }
}

该案例的一种方法是使用