0

我正在尝试通过使用 Doctrine DQL Hooks添加对 mysql AES_ENCRYPT(和)的调用来加密某些数据库字段。AES_DECRYPT

对于 SQL ,我在我的类中SELECT有一个,它遍历选择字段中的每个参数,并为加密字段添加一个。preDqlSelect()Doctrine_Record_ListenerAES_DECRYPT()

但是,看起来像调用save()一个学说模型类只调用preSave()监听器而不调用任何 preDql* 监听器。

任何人都可以提出一种让它发挥作用的方法或更好的方法吗?

谢谢

4

1 回答 1

0

为了检查这些 dql 回调,您必须明确打开它们。因为这会为每个查询增加少量开销,所以默认关闭

$manager->setAttribute(Doctrine_Core::ATTR_USE_DQL_CALLBACKS, true);

Doctrine 1.2 事件监听器

于 2011-05-10T13:41:48.493 回答