2013-11-15 28 views
0

我需要记录用户活动的某些方面。基本上更新,插入和删除一些表。这是一个基于php的web应用程序。这意味着没有面向方面编程。用于记录用户活动的设计模式

我想在这种情况下使用最适合的设计模式。

谢谢

+0

PHP确实有AOP。 – eversor

+0

设计模式?简单的旧日志记录有什么问题?你正在尝试将复杂的术语应用于一个微不足道的问题。 –

回答

1

设计模式不是你想要的术语。你基本上是指“人们为解决这个问题做了很多事情。”

除了语义之外,虽然没有标准的AOP支持,但您可以使用Go!库来实现PHP的AOP。这里是使用Go的tutorial!记录。

您还有其他选择,如FlowLithium

+0

有关更多信息,请访问Go官方网站!例如,AOP [使用教条注释的PHP中面向方面的日志记录](http://go.aopphp.com/blog/2013/07/21/implementing-logging-aspect-with-doctrine-annotations/) – lisachenko

0

如果你把它放在php代码中,你将不得不复制逻辑,如果你想使用其他语言。

你最简单的选择可能是简单地使用触发器在数据库中(无需设计模式!)

不过,如果你把你的数据库这个逻辑,你必须找到一个替代你应该永远要移动到另一个数据存储区。

通过在代码级别注入日志记录,您可以记录更多SQL CRUD操作,如果您需要的话?使用触发器,您不必担心事务和原子性。

我认为这涉及到您的要求的具体细节以及您花费多少时间购买设计模式的理想主义应用程序。我会鼓励实用主义!