2015-07-20 64 views
3

得到的值是否有从实体读取所有可用值的可能性?的Symfony从实体

E.G.

class Properties 
{ 
    /** 
    * @var integer 
    * 
    * @ORM\Column(name="id", type="integer") 
    * @ORM\Id 
    * @ORM\GeneratedValue(strategy="AUTO") 
    */ 
    private $id; 

    /** 
    * @var string 
    * 
    * @ORM\Column(name="UserID", type="string", length=255) 
    */ 
    private $userID; 

    /** 
    * @var string 
    * 
    * @ORM\Column(name="Sport", type="string", length=1) 
    */ 
    private $sport; 

. 
. 
. 

这样我就能得到像Id这样的名称:UserID,Sport?

回答

4

你可以阅读你需要通说与信息元数据信息如下:

$doctrine = $this->getContainer()->get("doctrine"); 
    $em = $doctrine->getManager(); 

    $className = "Acme\DemoBundle\Entity\Properties"; 

    $metadata = $em->getClassMetadata($className); 

    $nameMetadata = $metadata->fieldMappings['sport']; 

    echo $nameMetadata['type']; //print "string" 
    echo $nameMetadata['length']; // print "1" 

    // OR query for all fields 
    // Returns an array with all the identifier column names. 
    $metadata->getIdentifierColumnNames(); 

API DOC

希望这有助于

+1

Greast。我现在使用“getColumnNames”,所以我会recive所有名称。谢谢。棒极了 :) – TheTom