如何以编程方式处理Symfony的路由,控制器,操作和视图以生成有用的文档或突出显示问题?

时间:2017-10-17 22:09:47

标签: php symfony

我正在维护一个相当复杂的继承Symfony 2.8应用程序,它具有大量的路由,控制器,操作和视图。偶尔,我会发现某些视图或路由或者甚至没有使用的东西,但是很难证明 - 我最终在我的IDE中进行了大量搜索,从模板名称跳转到Action到一个路由。直到我终于走到死胡同并意识到我可以删除它(即使那时我也很紧张!)。

有没有一种方法可以有条不紊地检查这些方面之间的配置和参考,以编程方式,让我准确地概述它们如何挂在一起,看看它是如何工作的,以及我可以抛出哪些位远?

作为一个例子,最终得到类似下面的东西,而不必手动制作它将非常有用:

has_many :advices

我意识到这是一个很大的问题,特别是因为其中一些链接是用PHP代码完成的,但是手指交叉......

1 个答案:

答案 0 :(得分:0)

我使用了一种叫做“墓碑”的技术。在我认为没有使用的代码中,我将登录到一个文件。经过几天或几周的使用,在开发和现场,我看到记录了什么,并知道他们正在被使用 - 剩下的可能是公平的游戏删除。

在我在本地运行的开发环境中,对tombstone调用的命中是即时死亡,所以我可以删除它。在env = test中,我将记录它并考虑调用它的测试是否也是多余的。

对于env = prod,它只会被记录到一个文件中供我稍后查看(并可能删除tombstone()调用)。

未写入日志的内容未被调用。

我还blogged on the subject of tombstones,特定于Symfony代码&示例,以及我用来支持它的库的链接。