How can a custom database class help in managing and counting SQL queries in PHP?

To manage and count SQL queries in PHP, a custom database class can be created to encapsulate the database connection and query execution logic. This class can include methods to execute queries, track the number of queries executed, and provide methods to retrieve this count. By using a custom database class, the codebase can be organized more efficiently, and the query count can be easily monitored and managed.

class CustomDatabase {
    private $connection;
    private $queryCount = 0;

    public function __construct($host, $username, $password, $database) {
        $this->connection = new mysqli($host, $username, $password, $database);
        if ($this->connection->connect_error) {
            die("Connection failed: " . $this->connection->connect_error);
        }
    }

    public function executeQuery($sql) {
        $this->queryCount++;
        return $this->connection->query($sql);
    }

    public function getQueryCount() {
        return $this->queryCount;
    }
}

// Example usage
$db = new CustomDatabase("localhost", "username", "password", "database");
$result = $db->executeQuery("SELECT * FROM users");
echo "Total queries executed: " . $db->getQueryCount();