Model Symfony:关于基本模型类的get和set方法的问题

Model Symfony:关于基本模型类的get和set方法的问题,model,symfony1,Model,Symfony1,如果您转到模型的基类,您将找不到任何get或set方法 这是因为这些方法据说是“在空中”创造的 这意味着什么?我怀疑这仅仅意味着它们是在需要的时候被创造出来的 我说得对吗?重透视在基类内生成方法的方式有哪些优点 问候 Javi原则使用PHP实现get*()和set*()方法,因此它将检查以确保列存在,如果存在,则相应地获取或设置值 此外,Doctrine还将检查您是否实现了自己的get/set方法,例如getnames(),并优先使用它,而不是直接设置列值。richsage正确地认为getXXX

如果您转到模型的基类,您将找不到任何get或set方法

这是因为这些方法据说是“在空中”创造的

这意味着什么?我怀疑这仅仅意味着它们是在需要的时候被创造出来的

我说得对吗?重透视在基类内生成方法的方式有哪些优点

问候

Javi

原则使用PHP实现
get*()
set*()
方法,因此它将检查以确保列存在,如果存在,则相应地获取或设置值


此外,Doctrine还将检查您是否实现了自己的get/set方法,例如
getnames()
,并优先使用它,而不是直接设置列值。

richsage正确地认为
getXXX
setXXX
方法是通过PHP的“magic”
\u调用
方法完成的,但并不是教条在发挥魔力。正是
sfDoctrineRecord::u call
$record->getName()
这样的调用转换为
$record->get('name')

这基本上是正确的,但神奇之处在于sfDoctrineRecord(一种符号创建)而非学说。