我特别希望以某种方式扩展 PDO
对象,以便在每次执行查询时添加一个内部计数器。我想以某种方式做到这一点,因为我不必更改任何现有查询或添加额外的功能 like this suggests .
我不太熟悉类,尤其是 PDO 类,但这可以做到吗?我该怎么做?
我正在考虑扩展 query
和 execute
并在每次调用它们时递增一个存储的变量。
最佳答案
扩展 PDO
将像任何其他类一样完成。这会满足您的需求吗?唯一的其他代码更改是在建立初始连接时必须实例化此类而不是 PDO
类。
class PDOEx extends PDO
{
private $queryCount = 0;
public function query($query)
{
// Increment the counter.
++$this->queryCount;
// Run the query.
return parent::query($query);
}
public function exec($statement)
{
// Increment the counter.
++$this->queryCount;
// Execute the statement.
return parent::exec($statement);
}
public function GetCount()
{
return $this->queryCount;
}
}
关于php - 使用 PDO 计算每个页面加载的查询数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12850886/