1
我使用学说2,我的实体已经设置变量一样:PHP保湿 ClassMethodsHydrator下划线代替,以驼峰造成错误
/**
* @ORM\Column(type="string")
*/
protected $phone_number;
/**
* @ORM\Column(type="string")
*/
protected $e_mail;
现在我要填写使用保湿像这样从数组这个变量:
public function fromArray($values)
{
$hydrator = new \Hydrator\ClassMethodsHydrator();
$hydrator->hydrate($values, $this);
}
但是使用这个功能后,我得到错误监守保湿试图调用的代替setPhone_number()setphoneNumber()...
你能帮我实现我的目标,而不是改变下划线到camelCase吗?
谢谢
感谢您的回答。这有效,但我有点担心,如果它是一个propop方式来做到这一点。因为实体表示表和对象变量表示列,我不想把它搞乱,因为“同一件事”有不同的名字 –
您可以轻松接受答案 - 这是做到这一点的正确方法。因为即使它感觉是一样的东西 - 它不是!一个是你的表定义,另一个是你的实体定义,根据ORM的概念,这是不一样的。在涉及DQL vs SQL中的SELECTS时,你会看到很多人为这种差异而挣扎。 – LBA