PHP:从MySQL查询语句中解析列名值?

时间:2014-01-14 03:28:10

标签: php mysql sql parsing

我正在尝试为网站构建审核日志记录。我想要做的是允许现有的MySQL查询保持不变(如果可能)到PHP函数,该函数解析数据并将其存储在审计日志表中。

例如,如果我有查询

UPDATE members SET name='Bob', age='40' WHERE memberId=123

然后我希望能够提取表名members,rowId 123以及两个列/数据(如同键/值)对name:Bob和{ {1}}。

如果可能,我想要一个也允许替代查询格式的解决方案:

age:40

然后这些将进入审计日志表,如下所示:

UPDATE members (name,age) VALUES ('Bob','40') WHERE memberId=123

显然,要填充此表,您可以看到我需要提取值的原因。理想情况下,我想从现有的MySQL查询字符串中执行此操作,传递到我的PHP函数(处理现有代码),但如果我需要实现新的PHP函数,我愿意接受建议。

正则表达式似乎既复杂又痛苦,因为我必须为每个表的每个列名称格式化它。那里有解决这个问题的解决方案吗?

0 个答案:

没有答案