首頁  >  文章  >  後端開發  >  如何檢索原則 2 中更改的實體欄位?

如何檢索原則 2 中更改的實體欄位?

Mary-Kate Olsen
Mary-Kate Olsen原創
2024-11-08 03:35:01607瀏覽

How to Retrieve Changed Entity Fields in Doctrine 2?

使用原則 2 擷取變更的實體欄位

使用 setter 修改實體的狀態時,了解哪些欄位已變更通常很有用。原則 2 提供了一種檢索此資訊的機制。

要取得已變更欄位的列表,請依照下列步驟操作:

1.取得工作單元

先擷取與實體管理器關聯的工作單元(UoW):

2。計算變更集

觸發託管實體的變更集計算:

3.擷取實體變更集

使用UoW 的getEntityChangeSet 方法可擷取所需實體所做的特定變更:

PreUpdate 偵聽器注意事項:

如果存取聽器中已變更的字段,請不要重新計算更改集,因為它們已經被計算過。只需直接檢索更改集即可。

警告:

此解決方案僅適用於 Doctrine 事件偵聽器,不應在此上下文之外使用。這樣做可能會擾亂 Doctrine 的正常行為。

以上是如何檢索原則 2 中更改的實體欄位?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn