|
Server IP : 10.106.20.8 / Your IP : 216.73.216.148 Web Server : Apache System : Linux webm008.cluster106.gra.hosting.ovh.net 5.15.167-ovh-vps-grsec-zfs-classid #1 SMP Tue Sep 17 08:14:20 UTC 2024 x86_64 User : sixiemesrc ( 611999) PHP Version : 8.0.30 Disable Function : _dyuweyrj4,_dyuweyrj4r,dl MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON Directory (0755) : /home/sixiemesrc/new/wp-content/languages/../plugins/query-monitor/classes/ |
| [ Home ] | [ C0mmand ] | [ Upload File ] |
|---|
<?php declare(strict_types = 1);
/**
* Database class used by the database dropin.
*
* @package query-monitor
*/
class QM_DB extends wpdb {
/**
* @var float
*/
public $time_start;
/**
* Performs a MySQL database query, using current database connection.
*
* @see wpdb::query()
*
* @param string $query Database query
* @return int|bool Boolean true for CREATE, ALTER, TRUNCATE and DROP queries. Number of rows
* affected/selected for all other queries. Boolean false on error.
*/
public function query( $query ) {
if ( $this->show_errors ) {
$this->hide_errors();
}
$result = parent::query( $query );
$i = $this->num_queries - 1;
if ( did_action( 'qm/cease' ) ) {
// It's not possible to prevent the parent class from logging queries because it reads
// the `SAVEQUERIES` constant and I don't want to override more methods than necessary.
$this->queries = array();
}
if ( ! isset( $this->queries[ $i ] ) ) {
return $result;
}
$this->queries[ $i ]['trace'] = new QM_Backtrace();
if ( ! isset( $this->queries[ $i ][3] ) ) {
$this->queries[ $i ][3] = $this->time_start;
}
if ( $this->last_error && ! $this->suppress_errors ) {
$code = 'qmdb';
// This needs to remain in place to account for a user still on PHP 5. Don't want to kill their site.
if ( $this->dbh instanceof mysqli ) {
$code = mysqli_errno( $this->dbh );
}
$this->queries[ $i ]['result'] = new WP_Error( $code, $this->last_error );
} else {
$this->queries[ $i ]['result'] = (int) $result;
}
return $result;
}
}