Database Zend_Db_分析器如何扩展类以记录行数

Database Zend_Db_分析器如何扩展类以记录行数,database,zend-framework,profiling,Database,Zend Framework,Profiling,正如我在主题中所说, 我的团队基于Zend框架(1.11)开发了社交网站。 问题是,我们的客户机希望调试(屏幕上的DB查询列表)时使用 执行时间、受影响的行数和语句语句。 Zend_DB_profiler为我们提供的时间和声明没有任何麻烦,但是 我们还需要受查询影响的行数(获取、更新、插入或删除)。 请帮助,如何处理此任务?这是当前的实施方案,它阻止您获得想要的东西 $qp->start($this->_queryId); $retval = $this->_execute($

正如我在主题中所说,
我的团队基于Zend框架(1.11)开发了社交网站。
问题是,我们的客户机希望调试(屏幕上的DB查询列表)时使用
执行时间、受影响的行数和语句语句。
Zend_DB_profiler为我们提供的时间和声明没有任何麻烦,但是
我们还需要受查询影响的行数(获取、更新、插入或删除)。

请帮助,如何处理此任务?

这是当前的实施方案,它阻止您获得想要的东西

$qp->start($this->_queryId);
$retval = $this->_execute($params);
$prof->queryEnd($this->_queryId);
可能的解决办法是:

  • 为Statement创建自己的类,比如从Zend_Db_Statement_Mysqli扩展而来的
  • 重新定义其执行方法,以便将$retval带入$prof->queryEnd($this->\u queryId)
  • 在Zend_Db_Adapter_Mysqli中使用新语句类名重新定义$\u defaultStmtClass
  • 使用重新定义的公共函数queryEnd($queryId)创建您自己的Zend_Db_分析器,使其接受$retval并处理$retval

谢谢,这正是我带来的,必须重载Zend_Db_语句::执行由Zend_Db_语句调用的Zend_Db_Adapter_摘要…)