KNP教条行为与Atlantic18教条扩展

hec*_*h30 12 php doctrine symfony doctrine-orm

只是好奇有两个不同的库处理Doctrine2行为/扩展(loggable,timestampable等):KNPLabs DoctrineBehaviorsAtlantic18 DoctrineExtensions,似乎继续Gediminas的工作.

他们的主要区别是什么?

我可以看到Atlantic18支持多个驱动程序,而KNPLabs不支持,它还有一些功能(Sortable,IpTraceable).另一方面,KNPLabs使用特征,并得到KNP的支持.

还有什么理由在Symfony2的doc中提到Atlantic18而不是KNPLabs的?

小智 2

我已经使用了 Atlantic18(我将其称为 Gedmo 扩展,因为这是您使用的命名空间),但是我没有使用 KNP 扩展,但是查看存储库,我也许可以指出我注意到的一些事情:

如果你想要的话,Atlantic18 确实有一些特征:例如

Atlantic18还具有使用学说注释的能力,我喜欢这一点

在我看来,Atlantic18 的可配置性更强,您可以指定列名称,但您似乎无法使用 KNP 扩展来做到这一点。

话虽这么说,开始使用 Atlantic18 看起来比开始使用 KNP 扩展要困难一些。另外,当我开始使用 Atlantic18 扩展时,这是从 gedmo 到 Atlantic18 的一个奇怪的过渡时期,因此文档和开发有点过时且难以遵循,但看起来现在已经更新了。