您必须实施命名策略才能获得camelCase自动生成的列名,如explained in Doctrine documentation。
做一个类来获得驼峰名称为您的列名,CamelCaseNamingStrategy.php:
<?php
class CamelCaseNamingStrategy implements NamingStrategy
{
public function classToTableName($className)
{
return 'cc_' . substr($className, strrpos($className, '\\') + 1);
}
public function propertyToColumnName($propertyName)
{
return $propertyName;
}
public function referenceColumnName()
{
return 'id';
}
public function joinColumnName($propertyName, $className = null)
{
return strtolower($propertyName) . ucwords($this->referenceColumnName());
}
public function joinTableName($sourceEntity, $targetEntity, $propertyName = null)
{
return strtolower($this->classToTableName($sourceEntity)) . ucwords($this->classToTableName($targetEntity));
}
public function joinKeyColumnName($entityName, $referencedColumnName = null)
{
return strtolower($this->classToTableName($entityName)) . ($referencedColumnName ?: ucwords($this->referenceColumnName()));
}
}
然后注册这个新类的服务,并将其添加到您的config.yml:
orm:
#...
entity_managers:
default
naming_strategy: my_bundle.camel_case_naming_strategy.default
你可以c/p查询吗? –
你的意思是什么*显示SQL结果的名称*? – Wilt
好的。我会更详细地解释。我的实体'TFixed.php',它的内容如下。 '命名空间RestBundle \ Entity; 使用Doctrine \ ORM \ Mapping作为ORM; /** * TFixedFees * * @ORM \表() * @ORM \实体(repositoryClass = “RestBundle \实体\ TFixedRepository”) */ 类TFixed { /** * @var整数 * * @ORM \列(名称= “USER_ID”,类型= “整数”) */ 私人$ USERID;' ,当我做任何SQL查询,其结果数组将有'{ 'USER_ID': '67637673'}'。但我需要的结果是在骆驼案件。 –