次のような呼び出しがあります。
$foo = $em->getRepository('MyBundle:Bar')->find($id);
$foo に返されるすべての列/値のペアをループできるようにしたいと考えています。ほとんどの場合、次の呼び出しで必要な情報が得られることがわかりました。
public function getEntityColumnValues($entity, $em){
$cols = $em->getClassMetadata(get_class($entity))->getColumnNames();
$values = array();
foreach($cols as $col){
$getter = 'get' . $this->underscoreToCamelCase($col, true);
$values[$col] = $entity->$getter();
}
return $values;
}
ただし、エンティティには、ドクトリン関連マッピングとしてのみ存在する情報が含まれている場合があります。その情報は $values に設定されていません。私が持っている getEntityColumnValues() 関数を介してクラス メタデータを取得せずに、$foo に設定された値をループする方法はありますか? これらのマッピングを取得するために機能を強化する方法はありますか? ありがとう。