Buenas,
Me gustaría saber como puedo resetear el número de consultas que lleva almacenada y resetearla a 0 cuando me haga falta durante la ejecución del script.
Me explico a continuación:
Parto de la clase extendida siguiente
Código PHP:
Ver original<?php
/*
CLASE EXTENDIDA DE PDO para contar el número de consultas que se realizan
*/
class CountPDO extends PDO
{
private $_queryCount = 0;
public function query()
{
$this->_increaseQueryCount();
}
public function prepare
($statement, $driver_options = array()) {
$this->_increaseQueryCount();
return parent::prepare($statement, $driver_options);
}
private function _increaseQueryCount()
{
$this->_queryCount++;
}
public function getQueryCount()
{
return $this->_queryCount;
}
}
?>
Tengo un script que realiza una conexión a la base de datos y luego procede a realizar mediante un bucle 10 acciones x ej. Para no tener que estar desconectando de la base de datos y volviendo a conectar para cada acción, me gustaría saber de una forma sencilla cuantas consultas se ejecutaron tras realizar cada acción.
Actualmente, lo que muestra es el acumulado
$db->getQueryCount();
Es decir, se realiza la acción uno, y se hacen 9 consultas, luego se ejecuta la acción 2 y se hacen 10 consultas, en lugar de aparecer que lleva 19 consultas, me gustaría poderle decir que tras cada acción del script volviese a empezar desde 0.
¿Cómo se podría hacer?
Porque analizando la clase, veo que la variable es privada y esto dificulta que se pueda hacer private $_queryCount = 0; no?
Muchas gracias de antemano!