patternphpModerate
Database connection in constructor and destructor
Viewed 0 times
destructordatabaseconstructorandconnection
Problem
I am playing with different ways to do database interaction in PHP, and one of the ideas I have been playing with is connecting to the DB in the constructor and disconnecting in the destructor. This is the code from my
This works well, my only reservation is that if I need to connect several to hit the database several times it will do multiple connections and disconnects. If I do that a lot I can see, maybe, potential problems. Is this a concern or is there a better way to do this? And is my code even up to snuff in general?
Database class.function __construct()
{
$this->link = mysql_connect($this->server.':'.$this->port, $this->username);
if(!$this->link)
die('Could not connect: '.mysql_error());
if(!mysql_select_db($this->database, $this->link))
die('Could not select database: '.mysql_error());
}
function __destruct()
{
if(mysql_close($this->link))
$this->link = null;
}This works well, my only reservation is that if I need to connect several to hit the database several times it will do multiple connections and disconnects. If I do that a lot I can see, maybe, potential problems. Is this a concern or is there a better way to do this? And is my code even up to snuff in general?
Solution
You could use MySQLi (PHP extension) which is class based by default instead of MySQL. It
is very easy to set up multiple connections. You are, however, required to know the connection you are querying always.
is very easy to set up multiple connections. You are, however, required to know the connection you are querying always.
Context
StackExchange Code Review Q#1, answer score: 19
Revisions (0)
No revisions yet.