Docrine 2를 사용하여 변경된 엔터티 필드 검색
setter를 사용하여 엔터티의 상태를 수정할 때 어떤 필드가 변경되었는지 아는 것이 유용한 경우가 많습니다. . 교리 2는 이 정보를 검색하는 메커니즘을 제공합니다.
변경된 필드 목록을 얻으려면 다음 단계를 따르십시오.
1. 작업 단위 가져오기
엔티티 관리자와 연결된 작업 단위(UoW)를 검색하여 시작합니다.
$uow = $em->getUnitOfWork();
2. 변경 세트 계산
관리 엔터티에 대한 변경 세트 계산을 트리거합니다.
$uow->computeChangeSets();
3. 엔터티 변경 세트 검색
UoW의 getEntityChangeSet 메소드를 사용하여 원하는 엔터티에 대한 특정 변경 사항을 검색합니다.
$changeset = $uow->getEntityChangeSet($entity);
사전 업데이트 리스너를 위한 참고 사항:
preUpdate 리스너 내에서 변경된 필드에 액세스하는 경우 변경 세트가 이미 계산되었으므로 다시 계산하지 마십시오. 변경 세트를 직접 검색하기만 하면 됩니다.
경고:
이 솔루션은 Doctrine 이벤트 리스너 내에서만 사용하도록 고안되었으며 이 컨텍스트 외부에서 사용해서는 안 됩니다. 그렇게 하면 Doctrine의 정상적인 동작이 중단될 수 있습니다.
위 내용은 교리 2에서 변경된 엔터티 필드를 검색하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!