我需要知道每个页面请求执行了多少 sql 查询。由于网站已经完成,我只是在运行优化分析,如果提供的任何解决方案都不需要我更改整个网站结构,我会更愿意。
我使用单个连接将所有查询发送到 MySQL 数据库:
define('DATABASE_SERVER', '127.0.0.1');
define('DATABASE_NAME', 'foco');
define('DATABASE_USERNAME', 'root');
define('DATABASE_PASSWORD', '');
$DB_CONNECTION = new mysqli(
DATABASE_SERVER,
DATABASE_USERNAME,
DATABASE_PASSWORD,
DATABASE_NAME,
3306
);
然后执行我使用的查询:
$query = "SELECT * FROM `sometable`";
$queryRun = $DB_CONNECTION->query($query);
有没有办法在 php 关闭连接之前计算已发送了多少查询并将答案记录在文本文件中?
最佳答案
您可以扩展 mysqli 对象并覆盖查询方法:
class logging_mysqli extends mysqli {
public $count = 0;
public function query($sql) {
$this->count++;
return parent::query($sql);
}
}
$DB_CONNECTION = new logging_mysqli(...);
关于php - 计算每个页面请求的查询数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13009564/