1 回答

TA貢獻(xiàn)2011條經(jīng)驗(yàn) 獲得超2個(gè)贊
以下是查找實(shí)體及其帶注釋的屬性的代碼示例。您可以將結(jié)果放在某處。但是,如果不替換帶注釋的實(shí)體,您將可以使用所有屬性,因此也許您需要?jiǎng)?chuàng)建一個(gè)偵聽(tīng)器,它將偵聽(tīng) symfony 內(nèi)核事件并修改您的響應(yīng)數(shù)據(jù)。
$annotationReader = new \Doctrine\Common\Annotations\AnnotationReader();
$entities = [];
foreach ($entities as $entity) {
$reflectionClass = new \ReflectionClass($entity);
if (empty($annotationReader->getClassAnnotation($reflectionClass, CustomAnnotation::class))) {
continue;
}
foreach ($reflectionClass->getProperties() as $property) {
if (empty($annotationReader->getPropertyAnnotation($property, CustomPropertyAnnotation::class))) {
continue;
}
$propertyName = $property->getName();
$propertyValue = $property->getValue($entity);
}
}
- 1 回答
- 0 關(guān)注
- 117 瀏覽
添加回答
舉報(bào)